一、Tuxedo Middleware 整体情况 
 现在流行称为 Application Server (应用服务器),它是C语言技术打造的一个应用服务器。是一个质量 
 比较好的软件。 
 Tuxedo被广泛应用于企业的核心系统领域,包括电信,金融,制造业等等领域。 
 Tuxedo 是C/S结构,界面是专门开发的,相对比较固定。与B/S相比,它有何多致命的弱点,比如页面 
 比较固定,很难改动,一个版本出来到下一个版本出来,周期比较长等,跟不上企业发展的需求。目前统计, 
 有20%左右的软件是��C/S架构的,但这并不是说C/S架构被淘汰掉了,它在固守着B/S架构目前还不能实现 
 领域。比如企业的核心业务系统,它是一个相对比较封闭的系统,它不需要外人来访问它。另一方面,C/S结 
 够输入快,系统反应快,适合企业快速反应的要求,这是 B/S结构所比拟不了的。 
 Tuxedo技术比较简单,精炼,相对于B/S来说。对学习者来说,能够帮助学习者深入认识底层的知识。 
 对理解Linux/Unix,网络技术,数据库技术,包括企业核心业务的架构来说,都是很好的应用。 
 二、Tuxedo Introduction (概述) 
 1、Tuxedo 的各个方面的功能特征(the main features of tuxedo) 
 上个世纪90年代初,企业将自己的核心业务系统从专有的大机纷纷转向Linux/Unix 这种开放系统平 
 台下。这种平台为了支持大型用户群,提高系统的容量,提高用户数。就将原来的client-server这种两层结 
 构转变成了现在的三层结构或多层结构(n-Tier Client Server)。多层结构实际上也是三层结构。 
 三层结构: 
 request service execute DBMS logic  
 Presentation --------------> Application --------------------> DBMS 
 (展示层) <-------------- (业务逻辑层)  <------------------- (数据层) 
 response DBMS status/data 
 Presentation Business DBMS 
 Services Logic 
 展示层做为客户端主要做展示和发送请求用的。 
 业务逻辑:承载业务逻辑的程序,不仅仅具有对数据增删改查的SQL语句,还有复杂的业务逻辑。而 
 这个业务逻辑就存储在application server 以 tuxedo 为代表,或者基于J2EE服务器weblogic等系统里。 
 数据库:用于存储数据,对外提供对数据进行增删改查��能 
 整个流程是:客户端向应用服务器 application server 发请求 request services ,应用服务器就 
 执行业务逻辑程序 Business Logic , 当业务逻辑执行到需要和数据库打交道的时候,它会发出SQL语句,执 
 行DBMS逻辑,然后数据库将执行后的数据返回到应用服务器,应用服务器再运行业务逻辑程序对返回的数据 
 进行加工,加工完以后,返回到客户端。客户端再用合适的界面将结果展示出来。 
 这种架构每个部分的职责非常分明,是目前很多企业核心系统架构。这种架构能支持的用户数更多,容 
 量更大。 
 这种架构的好处是:Flexibility (灵活性强,容易修改增加功能方便等) 
 Growth (容易扩充,如将来用户增多了可先对应用服务器进行扩充,扩充不够了,再扩BMS) 
 Performance (是三层架构最主要的好处,体现在他能够支撑的用户数增加了) 
 tuxedo的定位就定位在Application Server 这个层面上 
 2、Tuxedo 中C/S 通讯的体系架构及机制 (the client-server communication mechanisms) 
 中间件或者应用服务器最大的好处就是充当一个放大器的作用,我们可以假设一下,如果有1000或者 
 10000甚至更多的客户端直接和数据库打交道,数据库很明显是受不了的。那么,中间如果插了一个应用服务 
 器,应用服务器有消息队列排队机制,有多个进程线程的并发处理机制,它使得应用服务器维系着客户端的成 
 千上万个网络连接,处理他们的应用请求,同时保证着中间件这个应用服务器和数据库之间相对来说进行着比 
 较少的数据交流。中间件相当于放大了后台系统的处理能力,使得这种三层架构的系统的能够为更多的用户服 
 务。 
 3、Tuxedo 整体的体系架构(the tuxedo architecture) 
 tuxedo的实现现形式实际上就是一堆进程(tuxedo servers),这些进程中有一部分进程和 
 tuxedo客户端连接,一部分进程利用消息队列机制,从消息对列里取出来自客户端的请求,来执行相应的业 
 务逻辑,必要时发送一些SQL语句到后台的数据库。数据库将数据返回给tuxedo server ,然后tuxedo 
 server将相应的结果发送到tuxedo客户端。 
 tuxedo service (线程)是tuxedo server(进程)的一个函数,service要到server中注册,这 
 样server才知道它包含有多少个函数(service(name,客户端发送请求的时候��用调用这个函数的名字即 
 可)) 
 Tuxedo是三层架构的典型应用,它具体有以下特点: 
 (1)tuxedo server 为tuxedo clients 注册和提供(named)services ,这些servers支持访 
 问DBMS,或者其他集中的资源 
 (2)tuxedo client如果要调用某个服务,直接指定该服务(service)的名字就行了。客户端的服务请求(client service requests)被路由(rout)和被分发(distributed)到一个已经配置过的一群进程(server)里(a configured number of servers),这些进程提供这些service在tuxedo这一层。 
 (3)tuxedo servers 可以被分配到多个应用服务器上,它是被集中式配置和管理的。 
 4、Tuxedo 的扩充功能 (the extended tuxedo features) 
 tuxedo是当今最好的执行C、C++、COBOL事务程序应用的监控器。它不支持后台 Java 的开发。 
 客户端支持Java的开发。 
 tuxedo是: 
* middleware (between client & servers)
* Transaction Processing (TP) Monitor (事务处理监听器)
* Infrastructure for distributed applications -multi-tier,client-server environment
that is centrally manageed(分布式应用的集中管理的多层C/S架构的基本组成部分)
* The name Tuxedo comes from it's origins  : Transactions for Unix (TUX)
+distributed client -server communications (Extended for Distributed Operation)