您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 咨询培训 > Tuxedo培训教材
Tuxedo基础培训1.概述1.1TUXEDO基本特性介绍中间件的基本概念TUXEDO功能简介1.2使用TUXEDO进行应用的开发编写一个TUXEDO应用程序的基本步骤客户端程序的编写服务端程序的编写TUXEDO常见ATMI函数说明1.3TUXEDO配置参数详解TUXEDO配置文件的组成各组成部分的参数含义1.4TUXEDO管理工具的使用启动、关闭TUXEDO应用命令行管理工具的使用(tmadmin)1.5TUXEDO应用系统设计要点1.6术语定义BB:(BulletinBoard)TUXEDO应用启动时由BBL进程创建的共享内存块,包含了TUXEDO用来进行管理所需要的全部信息ATMI:(Application-to-TransactionMonitorInterface)面向事务的应用程序编程接口Server:是一个进程,守候一个消息队列Service:是一个单一的函数。一个server可以包含多个services.DDR:(DataDependantRouting)数据依赖路由PRIO:(Priority)TUXEDO服务优先级机制ACLs:(AccessControlLists)访问控制列表。TUXEDO的安全控制机制一种。CLOPT:(CommandLineOption)命令行参数。这是TUXEDO配置文件ServerSection一个参数,在服务进程启动时,用来向服务进程传递参数。MSSQ:(MultipleServerSingleQueue)TUXEDO多服务单队列机制。多个server共享一个消息队列。2.中间件基本概念2.1商业计算模式的演变(1)集中式到分布式集中式模式下,所有的应用逻辑、数据资源都集中在一台服务器上。这个服务器一般是大型机。分布式系统中,每个应用逻辑独立一条机器。数据资源单独一台机器演变模式如下图:应用逻辑1应用逻辑2数据资源1数据资源2大型机系统应用逻辑1机器1应用逻辑2机器2数据资源机器3集中式分布式(2)分布式系统的两层结构阶段客户端应用:用户界面处理业务逻辑处理服务端应用:数据库服务器(3)二层结构在关键业务采用的限制前后台均是专用系统绑定客户机端的扩展性差不够模块化业务逻辑在客户机端对安全性/业务变化的管理能力差关系数据库系统间的互联性差关系数据库间没有交易处理适用于部门级解决方案:小于200个用户(4)如何对两层的结构进行扩展:采用多路集中方式,客户端不直接与服务库服务器相连,而是先与一个sesstionconnector相连,再由sesstionconnector与数据库服务器。(5)分布式系统的三层结构阶段:对二层系统的扩展,就演变成了分布式系统的三层结构:将业务逻辑从客户端应用中分离出来,组成业务逻辑服务器。客户端与业务逻辑服务器相联,业务逻辑服务器与数据库相连。这样就演变成“客户端、业务逻辑服务器、数据库服务器”的三层结构。2.2中间件是三层结构的手段(1)中间件是将应用映射到相关的资源上的软件技术,它是由一系列的API和通讯协议所组成的。中间件使得三层的客户服务器架构得以实现。(2)使用中间件的应用的优点:灵活地在客户与服务器之间划分数据与逻辑.便于按照业务需求修改客户端或服务器端的逻辑.分隔系统的开发与系统的部署.提供分布交易的全程保护3.BEATUXEDO简介3.1TUXEDO消息处理机制3.1.1client/server架构的两种模式在一个client/server结构的应用中,client(需要服务的实体)和server(提供服务的实体)是互相独立的两个逻辑对象,两者通过通讯来共同完成一个任务。client发起一个服务请求,并接收server端返回的处理结果。server端接收并处理client端的请求,并把结果返回到client端。一个客户端应用(clientapplication)的功能:组织服务请求数据,并接收请求处理结果。提供通过网络,发送服务请求数据、接收请求结果的机制一个服务端应用(serverapplication)的功能:接收client端的服务请求数据,根据业务逻辑处理客户请求,并将处理结果返回到client端。有两种类型的client/server架构模式数据请求模式(适合client/server之间传输大批量数据)服务请求模式(适合快速的、级小数据传输的服务请求)3.1.2TUXEDO如何处理client/server架构模式TUXEDO使用conversation(会话)方式来处理“数据请求模式”TUXEDO使用request/reponse方式来所处理“服务请求模式”使用TUXEDO的client/server应用的特点:快速的,无连接的通讯:在应用TUXEDO的系统中,客户端与TUXEDObulletinboard建立连接(而不是与具体的Server建立直接的连接),然后由TUXEDO寻找最合适的SERVER来提供服务。这样节省了系统资源,提高了系统性能。队列是实现无连接通讯结构的关键。每个SERVER被分配一个内部的消息队列,被称为“请求队列”,每一个客户端也被分配一个消息队列,被称为“响应队列”。这样客户端不用与具体的SERVER建立并维持连接,而只要检索“响应队列”来获得返回结果。服务进程的透明性:BB包含一个后台所有service的目录,客户端只要按名调用后台service,而不用管service所在何处。可扩展性:因为service和server可以很容易的复制,并且它们可以是分布式的,因此,可以很方便的根据系统的负载来调整后台应用。3.1.3嵌套的服务请求(NestedServiceRequests)服务可以嵌套调用。一个service嵌套调用另外一个service,必须等到被调用的service返回,才能做下一步的处理。嵌套调用优点:代码的可重用。缺点:影响系统的整体性能,尤其是在分布式应用服务器的架构中。如果可能的话,嵌套应该限制在两层。在一个典型的三层模式的应用中,只有两层的嵌套调用会取得很好的效果。这三层是表现层(PresetationLogicLayer)业务逻辑层(BussinessLogicLayer)数据库层(DatabaseLayer)3.1.4传递的服务请求(ForwardServiceRequests)另外一种服务嵌套调用的方式是forward方式。在forward方式中,service不是将处理结果返回给客户端,而是将服务请求传递给下一个service,下一个service或者将处理结果返回给客户端,或者继续传递。forward调用的层次没有限制,也不会导致server的堵塞。3.1.5TUXEDO会话(conversation)处理机制除了request-reply的消息机制,TUXEDO还支持大数据量的传输。TUXEDO采用叫做会话(CONVERSATION)的方式来处理。在client端与server端建立一个虚连接(avirtualconnection),并且维持这个连接直到完成数据传输任务。TUXEDO提供一组API函数用于实现client与server端的这种通讯机制。主要包括连接,发送、接受、终止连接。Conversation这种通讯机制,是半双工的,只有取得控制权的一方,才可以发送数据。另外一方只能被动的接受数据。在配置上conversation模式的SERVER要加“CONV=Y”参数3.1.6主动通知/事件代理(UnsolicitedNotification/EventBroker)TUXEDO还支持非listening--reply的通讯方式,可以定义当某个“条件”满足时,系统自动与另外的系统进行通讯,即使其他系统没在listening。这个“条件”在TUXEDO中称为event这种主动通讯方式叫做UnsolicitedNotification3.2BEATUXEDO3层Client/Server架构sss采用BEATUXEDO开发分布式应用,开发人员只要处理用户界面业务逻辑数据库访问其他底层处理,全部由TUXEDO来处理:网络通讯负载均衡容错处理数据一致性可扩展性跨平台性安全控制系统管理因此要开发大型部门关键事务处理的分布式系统,TUXEDO完全可以胜任4.BEATUXEDO功能详解4.1高速的数据甬道1、在没有使用中级件的传统的二层模式中,每个客户机或客户应用程序均和服务器或服务程序建立“硬连接”。客户端N个,服务端M个,则网络连接数=N×M个2、如果使用了中间件,则客户端与中间件相联,中间件与后台服务相联。客户端N个,服务端M个,则网络连接数=N+M个4.2TUXEDO具有丰富的通讯机制:同步调用异步调用会话广播管道发布&订阅4.3负载均衡服务器间的负载均衡应用进程间的负载均衡多服务单队列机制(MSSQ),自动增减应用进程。数据依赖路由(DDR)4.4数据依赖路由(DDR)客户端对同一个service的调用,TUXEDO可以根据客户端的具体数据,分发到不同服务进程,TUXEDOBB包含一个路由分配表。路由分配表中定义具体的哪个service所服务的请求范围。通过数据路由功能,可以将对同一个service请求的数据扩展到多台服务器。DDR机制支持了service的多态性。我们将通过具体的例子来说明DDR机制4.5TUXEDOservice优先级机制(PRIO)优先级只是针对service而言。优先级高的service优先得到调用。每个service默认的优先级是50。例子:A、B、C为三个优先级不同的servicesA(20)B(30)C(50)则service调用顺序是CBA。为了保证优先级低的service有机会得到调用,TUXEDO以10次为1个循环。第10次不论优先级,而是执行请求队列中多靠前的服务(FIF0)。4.6TUXEDO的交易完整性(分布式事务处理)TUXEDO应用中,通过使用TUXEDO提供的事务处理函数来创建一个事务。在事务中的业务处理被看做一个整体,要么一起提交,要么一起回滚。TUXEDO提供一组API函数来begin,commit,rollback事务。在一个service中包含一个事务,在事务内部又调用远程主机的一个service,对远程主机的调用是事务处理的一部分,因此要保证一致性,就要使用TUXEDO的全局事务机制。为了跟踪分布式事务处理TUXEDO要保留复杂的数据,以便随时都能回滚到事务开始的地方。为了跟踪事务的参与者,TUXEDO创建事务日志。为了跟踪应用程序的状态,TUXEDO采用一个或多个资源管理器RM(ResourceManager)。这些RM通过XAinterface进行交流信息。为了协调事务处理中的所有操作,TUXEDO采用了TransactionManager(TM)。为了说明RMs域TM的关系,可以假设RMs是演员,TM是导演。TUXEDO采用二级提交机制,来实现全局事务的提交。首先是RM进行预提交,预提交全部成功后,TM做最后的真正的提交。4.7完善的安全机制在应用层TUXEDO提供5级安全策略。1、操作系统级(OperatingSystem)安全机制由操作系统提供,TUXEDO没有增加另外的安全机制。在配置文件中,security设置为NONE2、应用级密码(ApplicationPassword)要求每个客户端在tpinint时提供应用程序口令。在配置文件中,security设置为APP_PW.3、用户级密码(UserAuthentication)每个tpcall都需要提供应用程序口令。在配置文件中,security设置为USER_AUTH.缺省的授权控制服务是AUTHSVC,这个服务有BEATUXEDO系统自带的SERVER程序AUT
本文标题:Tuxedo培训教材
链接地址:https://www.777doc.com/doc-2863991 .html