BEA TUXEDO 是中间件,(我个人理解是应用的中间服务),是三层C/S 应用的中间层。现在银行、电信、邮政都在(或已经)对现有的系统进行基于 TUXEDO 的三层 C/S 改造。
我粘贴一点资料给大家看看:
BEA TUXEDO是在企业、Internet 这样的分布式运算环境中开发和管理三层结构的客 户/服务器型关键任务应用系统的强有力工具。它具备分布式事务处理和应用通信功能,并提供完善的各种服务来建立、运行和管理关键任务应用系统。开发人员能够用它建立跨多个硬件平台、数据库和操作系统的可互操作的应用系统。BEA TUXEDO是企业、 Internet 分布式应用中的基础主干平台(见图1)。它提供了一个开放的环境,支持各种各样的客 户、数据库、网络、遗留系统和通讯方式。
图1 BEA TUXEDO是企业、Internet分布式应用中的基础主干平台
BEA TUXEDO使分布式关键任务应用系统具有大型主机的性能,从而使这些应用系 统能够应付数以千计的用户,大交易吞吐量,多并行数据库存取和大量数据,同时保持较短的反应时间,较高数据完整性和安全性,并且确保全年365天,每周7天,每天24小时的系统可用性。同时,BEA TUXEDO还能让开发人员和系统管理人员享用分布式运 算环境提供的好处,如技术成本的低增长率,灵活性提高,快速应用开发和安装以及业务信息存 取得以改善。
BEA TUXEDO的组件软件模型
关键业务应用通常是面向事务的,要求具有准确的数据完整性、较好的性能和管理需求。这些需求要求对应用的开发、调度和操作给出一个结构化的方案。由像BEATUXEDO这样的中间件支持的组件软件模型为分布式环境处理关键性业务应用提供了一 个结构化的 解决方案。BEA TUXEDO和基于组件的应用设计从异构的计算资源中创建了一个虚拟主 机: 在分布 式应用系统级提供可管理的相互关联的资源。
许多组织在进行了一段时间的分布式应用工作后,现在已经认识到组件软件模型是他们的必然选择。分布式应用的直接动力是主机应用和集中式中规模的应用系统基础上又逐渐配备有大量的台式系统和服务器系统,这些分布式系统在标准网络传送协议的支持下,呈松散耦合的态势,事实上它们构成了网络计算资源的基础。在开始的时候,分布式系统主要服务于把集中式系统的前台应用迁移到网络环境----主要用台式处理器和文件 服务器 实现文档处理和电子邮件通讯应用系统。接着,两层的客户/服务器数据库应用在部门级被采用,这类应用把交互式文件共享进化到并发数据元素访问,在数据级支持更细粒度的管理。虽然这些客户/服务器应用具体化了真正分布式应用处理的概念,它们仍留有为某一目标定制的特性,规模和管理能力都有限。更重要的,这些应用只停留在较细粒度的数据访问上,使得整个应用系统宛如磐石,不能有效地利用网络资源。
面对更大规模的关键业务应用,如要进行有效的分布式处理,就要求从客户/数据库方案转变到三层 客户/应用系统/数据服务器结构。以后者为核心的组件软件 模型是客户/服务 器计算的拓展,它支持应用分区,能有效地开发和调度应用业务逻辑,管理分布式应用的可靠执行。
BEA TUXEDO 采用三层结构的组件软件模型。图2 表示BEA TUXEDO 的组件软件模 型的概要。该结构分为三层:
图2 BEA TUXEDO 的组件软件模型概要
l 客户为第一逻辑层,实现用户交互和数据表示,向第二层的服务器请求调用核心的业务逻辑处理服务,比如数据库的读取和更新。
l 中间层为服务器组件,这些组件由BEA TUXEDO 管理,实现核心的业务逻辑服务并 将这些服务按名字广播,接受并处理从客户或其他服务器发出的请求这些服务的消息,并将处理结果返回给请求者,即客户或其他服务器。
l 资源管理器,比如像关系数据库,构成模型的第三层,负责管理应用系统的数据资源。服务器组件在完成服务的过程中通过资源管理器存取它管理的数据,或者说请求资源管理器的数据服务。相对于以数据库为中心的的两层 客户/数据库服务器模型, BEA TUXEDO的三层结 构模型 客户/应用服务器/数据库将应用的业务逻辑和用户界 面的表示分开。 这样就允许开发人员专注于应用的核心业务逻辑的划分、封装、与相 互作用,快速建立系统的核心业务功能的原型。
另外,明确地划分界面表示和业务逻辑,对用户有效地管理应用系统也是意义重大。对具有成百上千个客户的两层结构的系统来说,经常性的更新、升级系统是一项十分棘手的维护工作,尤其是当系统已经投入实地运行以后。三层模型将用户交互的表示部分与内部的业务逻辑分开,这样对业务逻辑的一些修改甚至数据库模式的改动经常都不要求客户的改动。而且,将核心业务逻辑组件和表示逻辑及数据层划分开,BEA TUXEDO可以在服 务 级别 上非常有效地管理应用的运行。它可以动态地管理消息流程和服务请求,快速启动 和停止服务器,根据变化的负荷复制服务器,动态地广播、撤消服务器中的服务,将服务从一个服务器转移到另一个服务器等等。这些对中间层应用的服务级别上的管理大大增加了分布式应用的伸缩性和灵活性。
BEA TUXEDO 的特点
l 减轻开发人员负担
BEA TUXEDO的三层结构组件软件模型将用户界面的表示部分和业务逻辑部分按客户 组件服务器组件分开,使开发人员能够按组件的思想专注入于业务逻辑的开发,用户界面部分可用流行的前端开发工具来快速完成。而客户和服务器之间、服务器和服务器之间的通讯,异构平台之间的数据变换,以及服务器和数据库之间的集成和事务控制都由BEA TUXEDO 来完成。当数据库或服务器端的业务逻辑改变时,客户端则不一定要改变;反 之当客户改变或增加新的客户界面时,服务器端则不一定要改变,大大增加了应用系统的各部分的可复用性。BEA TUXEDO提供的简洁API 使用户程序能够物理地点透明地在客户 和服务器之间、 服务器和服务器之间进行各种方式的通讯,极大地减轻开发人员的负担。
BEA TUXEDO提供的通讯方式有同步RPC调用,异步RPC调用,对话通信方式,广播 通讯方式,异步存储转发队列通讯,事件通讯方式等。
l 使系统的安装与升级更容易
在BEA TUXEDO 的三层结构组件软件模型下开发的应用程序以服务器组件和客户组件 为安装、升级的单位,当一个组件需要更新时,管理人员甚至能够在运行系统不停机的情况下完成系统的升级,这在客户端为数以千计的关键任务应用中尤为重要。
l 减轻系统管理人员负担
BEA TUXEDO系统提供从一个中心点对整个分布式系统进行全局监控及管理的能力, 管理员根据一个整体系统视图(而不仅是单个节点或单元)提供的信息,可以作出决定和采取动作。BEA TUXEDO不但提供了一些管理命令,而且提供了一个集成的图形界面管 理工具,集中地 监视和管理应用系统的运行,并且可动态地修改系统配置。通过Java的 applets,还可利用 Internet的浏览器比如Netscape或Microsoft的Explorer来运行该图形界面管 理工具。
此外,BEA TUXEDO还提供了描述系统中各对象的管理信息数据库(MIBS)和存取 管理这些管理信息数据库的管理API,用户可利用这些管理API,编写自己特有的管理工 具。
l 非常高的性能
一方面,BEA TUXEDO能够使多个客户连接到一个服务器进程, 由这个服务器进程 存取数据库,为客户的请求服务。这样, 数据库为处理连接所需的资源大大减少。 另一 方面, 客户和服务器之间,服务器和服务器之间的通讯中,网络上流动的只有相对较少 的客户或服务器的请求和服务器处理的结果,而不再是两层结构中客户和 DBMS 之间的大 量SQL请求和应答。此外,利用BEA TUXEDO特有的一 些机制也能极大提 高应用系统的 性能。比如利用异步RPC机制实现扇出并行,利用转发机制实现流水线并行,利用多服务器单队列实现多处理并行等。所有这些因素使BEA TUXEDO的应用系统具有极高的性能 。世界上大部分硬件服务器的TPC 性能指标都是在BEA TUXEDO上完成的。
l 更高的可用性
BEA TUXEDO随时知道它控制下的资源的情况,并利用这些信息为应用提供最大可 用性。分布式系统使资源故障的影响复杂化。在一个分布式系统中,多个节点代表更多的潜在故障点的可能,但也可以代表在资源恢复开始时在其他节点上重新分配工作的更大潜力。
BEA TUXEDO在这种分布式系统故障恢复上具有优势。TUXEDO将重启应用进程, 并且 能在硬件故障情况下在其它结点上重新运行进程。
l 分布式环境中更高水平的数据完整性
BEA TUXEDO设计了数据资源的绝对完整性。目前出现的客户/服务器应用中,重要 数据资源很可能是广泛的,而且受异构系统的控制。应用可以设计成用严格的保证数据一致性的两阶段提交,或者用更多的缓冲存储和转发技术来管理异构的(或者同构的)数据库的更新。在各种情况下,BEA TUXEDO能够确保异 构的 (或者同构的) 数据库以 及 它资源管理器之间的完整性。
l 系统的安全性
BEA TUXEDO通过结构化用户界面支持应用服务的验证、授权和存取控制,允许用 户加入自己的验证服务模块。BEA TUXEDO还提供信息加密服务,允许对网络上传输的 信息按RSA 的RC4算法加密。目前美国本土内可按128位,本土外可按40位加密。
l 开放系统中最开放的中间件平台
BEA TUXEDO是一个非常开放的平台,支持三十多种服务器平台,包括大多数的 UNIX服务器 ,WindowsNT 服务器,IBM的S/370,S/390, 加上AS/400和 Tandem公司的 NonStop系统。它的客户支持几乎所有的工作站,包括 UNIX,MS-DOS,Windows3.1/95, Windows NT, OS/2,Macintosh等。 BEA TUXEDO支持X/Open组织 的分布式 事务 处 理 模型DTP,事务定界标准TX, 应用程序事务处理接口标准XA TMI以及 和资源 管理 器 (像数据库系统)的接口标准XA,并且还支持事务处理器之间的互操作标准OSI-TP。 BEA TUXEDO的客户端通过DLL 可以和Visual C++、Visual Basic、 Power Builder、 SQL Windows、Delphi、Develop/2000 以及其他4GL和CASE 工具互连。
此外,BEA TUXEDO还得到其他第三方开发管理工具厂商的支持。
l 系统的伸缩性
简单地说,软件可伸缩性就是可以很容易地增加被支持的用户数和应用的全局吞吐量。
一个可伸缩的软件系统是利用网络分布系统优势的关键。BEA TUXEDO提供的就是 这样一个系统,它可以利用在一个网络上所能找到的所有的异构的资源以获得最大的效益。 BEA TUXEDO提供这一点,而且提供许多可伸缩性选项。 垂直方向的可伸缩性代表的 含义与通常相同,即将系统转变(升级)为一个更大,更有力的相同或不同结构的平台。水平方向的可伸缩性多是在分布式系统结构中,它以增加适当规模的附加系统来增强网络应用。所增加的附加系统与原有系统可能是同构的,也可是异构的(那就是不同的处理机或操作系统)。
BEA TUXEDO支持二维的可伸缩性。二维可伸缩性可在结构上的任意位置添加异质 资源,而不改变已存在的应用的结构。允许对一个复杂的混合结构的支持,为联机网络系统提供了广泛的规模选择范围。任何与数据表示有关的(如不同的处理器表示)可以由 BEA TUXEDO透明地解决。
BEA TUXEDO 还可根据系统负荷的变化动态地增加或减少应用服务器的个数。
l 广泛的开发工具支持
除了像C,C++和COBOL这样的第三代语言编程环境,BEA TUXEDO系统享受最广 泛的第三方工具的支持,下面是开发BEA TUXEDO应用目前可用工具的一个列表。
表1 TUXEDO允许的开发工具选择
公司 开发工具 客户端 服务器端
Ally Ally 4GL* ü
Informix IFORMIX 5.0 (XA) ü ü
Informix TP Toolkit* ü ü
ITI TP Tools* ü ü
Oracle ORACLE 7.0 (XA)Develop /2000 ü ü ü
Gupta SQL Windows ü
Novell Visual Appbuilder ü
Novell USL WKSH ü
Unify Accell 4GL* ü ü
Jyacc JAM/JPL* ü ü
TI IEF CASE* ü ü
Magna Magna X* ü ü
Powersoft PowerBuilder* ü
Delphi Delphi ü
Microsoft Visual Basic Visual C++ ü ü ü
此外 BEA TUXEDO 的关联产品BEA CONNECT 允许BEA TUXEDO 和IBM的CICS、 IMS、 Unisys的System2000进行互操作,BEA Jolt支持从Internet 浏览器上请求BEA TUXEDO 的服务。BEA Builder 和BEA Manager将BEA TUXEDO应用的开发与管理更为 简化。