TUXEDO中间件介绍及应用

上传人:新** 文档编号:508588253 上传时间:2022-10-02 格式:DOC 页数:7 大小:238KB
返回 下载 相关 举报
TUXEDO中间件介绍及应用_第1页
第1页 / 共7页
TUXEDO中间件介绍及应用_第2页
第2页 / 共7页
TUXEDO中间件介绍及应用_第3页
第3页 / 共7页
TUXEDO中间件介绍及应用_第4页
第4页 / 共7页
TUXEDO中间件介绍及应用_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《TUXEDO中间件介绍及应用》由会员分享,可在线阅读,更多相关《TUXEDO中间件介绍及应用(7页珍藏版)》请在金锄头文库上搜索。

1、TUXEDO中间件介绍及应用、前言首先介绍一下什么是中间件?中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服务器的操作系统之上,管理计算资源和网络通信。中间件屏蔽了底层操作系统的复杂性,使程序开发人员面对一个简单而统一的开发环境,减少程序设计的复杂性,将注意力集中在自己的业务上,不必再为程序在不同系统软件上的移植而重复工作,从而大大减少了技术上的负担。世界著名的咨询机构 Standish Group在一份研究报告中归纳了中间件的十大优越性:缩短应用的开发周期简化应用集成节约应用的开发成本减少维护费用减少系统初期的建设成本提高应用的开发

2、质量降低应用开发的失败率保证技术进步的连续性保护已有的投资增强应用的生命力Tuxedo是第一个严格意义上的中间件产品。 Tuxedo是1984年在当时属于 AT&T的贝 尔实验室开发完成的,但 Tuxedo在很长一段时期里只是实验室产品。直到 BEA公司1995 年收购Tuxedo后,使Tuxedo现已经发展成为交易中间件领域事实上的标准。TUXEDO是在企业、In ternet这样的分布式运算环境中,开发和管理三层结构的客户/服务器型关键任务应用系统的强有力工具。它具备分布式事务处理和应用通信功能,并提供完善的各种服务来建立、 运行和管理关键任务应用系统。开发人员能够用它建立跨多个硬件平台、

3、数据库和操作系统的可互操作的应用系统。二、TUXEDO的组件软件模型TUXEDO采用三层结构的组件软件模型。* HostApplicationServices图1 BEA TUXEDO 的组件软件模型概要图 1 表示 TUXEDO 的组件软件模 型的概要。该结构分为三层:客户为第一逻辑层, 实现用户交互和数据表示, 向第二层的服务器请求调用核心的 业务逻辑处理服务,比如数据库的读取和更新。中间层为服务器组件, 这些组件由 BEA TUXEDO 管理,实现核心的业务逻辑服务, 并将这些服务按名字广播, 接受并处理从客户或其他服务器发出的请求这些服务的 消息,并将处理结果返回给请求者,即客户或其他

4、服务器。资源管理器, 比如像关系数据库, 构成模型的第三层, 负责管理应用系统的数据资 源。服务器组件在完成服务的过程中通过资源管理器存取它管理的数据, 或者说请 求资源管理器的数据服务。相对于以数据库为中心的的两层客户 /数据库服务器模型, BEA TUXEDO 的三层结构模 型,客户 /应用服务器 /数据库将应用的业务逻辑和用户界面的表示分开。这样就允许开发人员专注于应用的核心业务逻辑的划分、 封装、 与相互作用, 快速建立系统的核心业务功能 的原型。另外,明确地划分界面表示和业务逻辑,对用户有效地管理应用系统也是意义重大。 对具有成百上千个客户的两层结构的系统来说, 经常性的更新、 升级

5、系统是一项十分棘手的 维护工作, 尤其是当系统已经投入实地运行以后。 三层模型将用户交互的表示部分与内部的 业务逻辑分开,这样对业务逻辑的一些修改甚至数据库模式的改动经常都不要求客户的改 动。而且,将核心业务逻辑组件和表示逻辑及数据层划分开,BEA TUXEDO 可以在服务级别上非常有效地管理应用的运行。 它可以动态地管理消息流程和服务请求, 快速启动和停止 服务器, 根据变化的负荷复制服务器, 动态地广播、 撤消服务器中的服务, 将服务从一个服 务器转移到另一个服务器等等。 这些对中间层应用的服务级别上的管理大大增加了分布式应 用的伸缩性和灵活性。三、 TUXEDO 的特点1 分布式环境中更

6、高水平的数据完整性TUXEDO 设计了数据资源的绝对完整性,能确保异构(或同构)的数据库以及它资源 管理器之间的完整性。2 非常高的性能TUXEDO 使多个客户连接到一个服务器进程,由这个服务器进程存取数据库,这样, 数据库为处理连接所需的资源大大减少。 另一方面,网络上流动的只有相对较少的客户或 服务器的请求和服务器处理的结果。此外, TUXEDO 特有的一些机制也能极大提高应用系统的性能。比如利用异步 RPC 机 制实现扇出并行,利用转发机制实现流水线并行,利用多服务器单队列实现多处理并行等。 所有这些因素使 TUXEDO 的应用系统具有极高的性能。 世界上大部分硬件服务器的 RPC 性

7、能指标都是在 TUXEDO 上完成的。另外,可将 Service 根据优先级的不同赋权值, 系统根据优先级权值将客户请求 ( Service) 排队管理。3 平衡负载。有多台机器做应用服务器时, 系统可自动根据每个机器的负载情况决定服务程序在负载 小的那一台机器上执行。4 高可用性在分布式系统中某一服务器节点发生故障时, TUXEDO 能在硬件故障情况下在其它结 点上重新运行进程,以保证服务提供的稳定性。TUXEDO 还可多台应用服务器互相备份。5 系统的安全性TUXEDO 通过结构化用户界面支持应用服务的验证、授权和存取控制,允许用户加入 自己的验证服务模块。 TUXEDO 还提供信息加密服

8、务, 允许对网络上传输的信息按 RSA 的 RC4 算法加密。6 减轻开发人员、系统管理人负担BEA TUXEDO 的三层结构,使开发人员能够按组件的思想专注入于业务逻辑的开发, 用户界面部分可用流行的前端开发工具来快速完成。 而客户和服务器之间、 服务器和服务器 之间的通讯,异构平台之间的数据变换,以及服务器和数据库之间的集成和事务控制都由 TUXEDO 来完成。TUXEDO 系统提供从一个中心点对整个分布式系统进行全局监控及管理的能力, 管理 员能根据一个整体系统视图 (而不仅是单个节点或单元) 提供的信息, 作出决定和采取动作。7 使系统的安装与升级更容易TUXEDO 的三层结构组件软件

9、模型下开发的应用程序以服务器组件和客户组件为安 装、升级的单位, 当一个组件需要更新时, 管理人员甚至能够在运行系统不停机的情况下完 成系统的升级,8 开放系统中最开放的中间件平台TUXEDO 是一个非常开放的平台,支持三十多种服务器平台,包括大多数的 UNIX 服 务器,Win dowsNT 服务器,IBM 的 S/370, S/390,加上 AS/400 和 Tan dem 公司的 Non Stop 系统。它的客户支持几乎所有的工作站,包括 UNIX , MS-DOS, Windows 系列, OS/2, Macintosh 等。TUXEDO支持X/Open组织 的分布式 事务 处 理模型

10、DTP,事务定界标准 TX ,应 用程序事务处理接口标准 XA TMI 以及 和资源 管理 器 (像数据库系统) 的接口标准 XA, 并且还支持事务处理器之间的互操作标准 OSI-TP。 BEA TUXEDO 的客户端通过 DLL 可 以和 Visual C+、Visual Basic 、 Power Builder、 SQL Windows 、 Delphi、 Develop/2000 以 及其他 4GL 和 CASE 工具互连。9 系统的伸缩性软件可伸缩性就是可以很容易地增加被支持的用户数和应用的全局吞吐量。BEA TUXEDO 支持二维的可伸缩性。 二维可伸缩性可在结构上的任意位置添加异

11、质 资 源,而不改变已存在的应用的结构。 允许对一个复杂的混合结构的支持, 为联机网络系统提 供了广泛的规模选择范围。 任何与数据表示有关的 (如不同的处理器表示) 可以由 TUXEDO 透明地解决。10 广泛的开发工具支持除了像C, C+和COBOL这样的第三代语言编程环境,TUXEDO系统享受最广泛的第三方工具的支持。并有丰富的通信方式。有同步调用、异步调用、管道通信、会话、广播、通知、队列、 发布订阅等通信方式,能很好地满足应用开发的要求。四、TUXEDO工作原理Tuxedo可以有效地整合企业异构C/S系统,实现大规模的关键业务处理和分布式事务管理,从而为企业提供一个可靠的、高性能的、易

12、维护的三层分布式计算机环境。图2展示了一个基本Tuxedo系统的组成和工作原理。图2 Tuxedo系统的组成和工作原理 Client向System/T发出查询请求,以找到Server消息队列的地址; Client根据找到的入口地址将请求发送到Server的消息队列中; Server处理请求,并将结果返回给Client的消息队列。System/T是Tuxedo系统的核心,它实现了 Tuxedo的所有功能和特征,如C/S数据流管理、服务请求的负载均衡、全局事务管理以保证交易的完整性、同步/异步服务请求、两阶段提交以确保消息的发送等。System/T提供了一个类似公告栏的服务,用以发布C/S计算机环

13、境中所有服务器、服务和客户机的信息,供其它分布式计算的参与者使用。五、TUXEDO的开发创建使用Tuxedo的程序与在C和C+编程语言中创建其它应用程序一样,Tuxedo提供了一个其于 C语言的编程接口,即应用程序事务监控接口ATMI,这套接口很容易使用,以便用于开发客户程序和服务程序。除了C语言接口外,Tuxedo还提供了 COBOL接口。1 .开发客户端程序1) 调用tpchkauth()决定加入一个应用程序所需的安全级别。可能出现的响应包括: 没有安全级别,应用程序口令,应用程序授权,访问控制列表,连接级加密,公钥 加密,审计。这些可以根据你的需求进行选择。2) 调用tpinit()来连

14、接到一个Tuxedo应用程序,所需的安全信息作为tpinit()的参数 传给了应用程序。3) 调用 tpcall()、tpacall()/ tpgetrply()等来执行服务请求。4) 调用tpterm()来断开和BEA Tuxedo应用程序的连接。main ()ATMItpchkaiuth( J: -rtpinitO;do service call; tp1erm();Chesecurity level Connects to the BEA TUXEDO application Disconnects from the BEA TUXEDO application2 .开发服务端程序服务程

15、序不用全部由开发者来编写,开发者只需写一些称为服务的商业函数,然后和Tuxedo的一些二进制程序联编成一个可执行的服务程序。Tuxedo服务程序启动后,它总是保持运行状态,只到接收到一个shutdow n 消息为止。一个典型的Tuxedo服务程序在shutdown或reboot之前都在执行着数千个服务。. 在Tuxedo服务程序启动时, 执行tpsvrinit()函数,可以在里面打开一些如数据库 之类的资源供以后使用;. 在Tuxedo服务程序关闭时,执行tpsvrdown()函数,可以在里面关闭tpsvrinit()中打开的资料;.Tuxedo服务程序以服务的形式来响应客户程序的请求,客户程序不是通过名字来调用服务程序的,而是调用服务,客户程序不知道处理它请求的服务程序的位置;shuls down.服务程序调用tpreturn()函数来结束服务请求,并返回一个缓冲区,必要时,将它 传给客户程序;3.客户端和服务端程序通信的类型缓冲区在Tuxedo系统中的所有通信过程都是通过类型缓冲区来完成的,Tuxedo系统提供了大量的类型缓冲区来供开发者使用。所有类型缓冲区都必须通过Tuxedo的tpalloc(),

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号