阿
阿朱
Unregistered / Unconfirmed
GUEST, unregistred user!
看事物看本质,整体框架和层次了解了,细节问题迎刃而解。
MTS[Microsoft Transaction Server]就是Microsof的事务服务器。从技术本质上说,就是基于DCOM技术,能够提供数据库分布式事务处理的软件。因为这类软件构筑在操作系统,数据库,消息系统,网络通讯之上,又在应用程序之下,所以这类软件,人们俗称中间件。从它的技术实现角度看,我们学习的重点一个是DCOM,一个是分布式事务。
DCOM基于COM,DCOM间本地通信用共享内存,机器间用与传输协议武官的WINSOCK接口。COM间方法调用采用RPC机制。因此,我们学习DCOM其实只学习COM原理,共享内存,WINSOCK和RPC机制。因为MTS可以多线程运行,我们还需了解COM的线程模型和多线程。另外MTS要求COM组件必须以DLL的形式存在,所以我们还需要了解DLL的工作方式。
关于数据库分布式事务。其实MTS自己本身并没有具体代码实现数据库事务提交。这一个任务是由MSDTC和类似的事务监视器[如IBM CICS等]完成的。MSDTC与数据库直接打交道,把分布式事务提交的请求传给数据库。数据库自己才真正实现事务管理的代码。而MTS并不和MSDTC直接相连。它是通过数据访问接口[如ADO,ODBC,X/OPEN等]和MSDTC通讯的。因此我们学习分布式事务只需学习数据访问接口和MSDTC如何实现提交请求就可以了。
说的彻底点,MTS号称实现的三大POOLING:线程连接POOLING,数据库连接POOLING,组件POOLING。线程POOLING是多线程的激活与挂起原理。数据库连接POOLING时由数据访问接口提供的。其本质也时多线程的应用,挂起时就把环境保存到一个数据结构里。至于组件POOLING则时COM引用记数和MTS相互协作完成的。这一块,我会详细讲解一个COM的产生,激活,运行,POOLING和销毁。
在此,我没有介绍MTS的安全机制,因为它是利用的时WINDOWS的安全机制。
介绍到此,你就会发现,MTS并没有什么技术内涵,它死心塌地地利用了操作系统,数据库,网络通讯协议的功能,组成了一个用户可用的东西。这也是WINDOWS DNA的灵魂精神,即借助底层分散的功能专一的组件,组成强大的如七巧板可任意组合的系统,甚至是爬在INTERNET上的一个巨大系统。这也是WINDOWS.NET战略和C#的出现原因。
好了,以下各期我会给大家把MTS实现的诸多技术基础一一讲解,如果你认为上述技术你已精通,那么去试着创造一个MTS吧,相信自己的技术能力。[代续]
MTS[Microsoft Transaction Server]就是Microsof的事务服务器。从技术本质上说,就是基于DCOM技术,能够提供数据库分布式事务处理的软件。因为这类软件构筑在操作系统,数据库,消息系统,网络通讯之上,又在应用程序之下,所以这类软件,人们俗称中间件。从它的技术实现角度看,我们学习的重点一个是DCOM,一个是分布式事务。
DCOM基于COM,DCOM间本地通信用共享内存,机器间用与传输协议武官的WINSOCK接口。COM间方法调用采用RPC机制。因此,我们学习DCOM其实只学习COM原理,共享内存,WINSOCK和RPC机制。因为MTS可以多线程运行,我们还需了解COM的线程模型和多线程。另外MTS要求COM组件必须以DLL的形式存在,所以我们还需要了解DLL的工作方式。
关于数据库分布式事务。其实MTS自己本身并没有具体代码实现数据库事务提交。这一个任务是由MSDTC和类似的事务监视器[如IBM CICS等]完成的。MSDTC与数据库直接打交道,把分布式事务提交的请求传给数据库。数据库自己才真正实现事务管理的代码。而MTS并不和MSDTC直接相连。它是通过数据访问接口[如ADO,ODBC,X/OPEN等]和MSDTC通讯的。因此我们学习分布式事务只需学习数据访问接口和MSDTC如何实现提交请求就可以了。
说的彻底点,MTS号称实现的三大POOLING:线程连接POOLING,数据库连接POOLING,组件POOLING。线程POOLING是多线程的激活与挂起原理。数据库连接POOLING时由数据访问接口提供的。其本质也时多线程的应用,挂起时就把环境保存到一个数据结构里。至于组件POOLING则时COM引用记数和MTS相互协作完成的。这一块,我会详细讲解一个COM的产生,激活,运行,POOLING和销毁。
在此,我没有介绍MTS的安全机制,因为它是利用的时WINDOWS的安全机制。
介绍到此,你就会发现,MTS并没有什么技术内涵,它死心塌地地利用了操作系统,数据库,网络通讯协议的功能,组成了一个用户可用的东西。这也是WINDOWS DNA的灵魂精神,即借助底层分散的功能专一的组件,组成强大的如七巧板可任意组合的系统,甚至是爬在INTERNET上的一个巨大系统。这也是WINDOWS.NET战略和C#的出现原因。
好了,以下各期我会给大家把MTS实现的诸多技术基础一一讲解,如果你认为上述技术你已精通,那么去试着创造一个MTS吧,相信自己的技术能力。[代续]