1、Joseph C。Johnson以餐馆给出一个MTS的形象的比方
假设ORACLE是一家餐馆,当你走进一家餐馆时你觉得更舒适的办事体例就是有一个专门的waiter来为你办事,而不管餐馆中来了几人,她只对你恳求应答,那是DEDICTE的处置体例,也就是说每一个ORACLE客户端的毗连都有一个专门的办事历程来为它办事。
而大部的餐馆的服体例都不是一对一的,当你走进的时侯,你就被指定了一个waiter,她也可能为其它桌服着务,那关于餐馆来说是最有利的,因为他们能够办事更多的客人而不需要增加他们的员工。如许对你来说也可能是不错的,假设餐馆不是太忙,她办事的客人的恳求都很简短且随便完成,你的觉得也似乎本身拥有一个专门的 waiter,waiter把你的ORDER转给厨师,然后把做好的菜拿给你,那就是MTS的处置体例,那些共享的waiters我们喊她们为 Dispatchers,厨师我们则喊他们为Shared Server Processes。
2、以简图说一下MTS的工做体例(SYBEX书中的一幅图)
1)客户端向Dispatcher发一个办事恳求
2)Dispatch把那个恳求放到SGA区的恳求对队列中
3)由一个或几个办事历程来处置那个恳求
4)办事历程把停止的成果放到Dispatch的SGA区的的响应队列中
5)Dispatcher从响应队列拾起成果
6)完成客户端的恳求并把成果回送给客户端
三、MTS与DEDICATE体例方面做一下比力,为便利比力绘造如下的简表
序号
比力项
MTS体例
DEDICATE体例
1
办事历程
多个毗连共享一个办事历程
一个毗连有一个专门的办事历程
2
每个客户端的毗连利用的内存量
3-4M
150-200K
3
合适的利用情况
合适毗连数良多且恳求很缺少的OLTP情况
假设Oracle办事器的资本够用,那种体例是优选
4
CPU负载
会形成一些CPU的负载,假设你的CPU有瓶颈,则不要用那种体例。