TUXEDO知识培训课件_第1页
TUXEDO知识培训课件_第2页
TUXEDO知识培训课件_第3页
TUXEDO知识培训课件_第4页
TUXEDO知识培训课件_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、TUXEDO基础产品研发部日期:2011-05Tuxedo简介Tuxedo客户端目录目录Tuxedo命令Tuxedo开发实例Tuxedo性能优化原则什么是TUXEDO? Tuxedo系统是BEA公司的交易中间件产品,由于出现的比较早,并且在各个方面都具有出色的表现,因此长期以来,它在分布式系统的联机事务处理(OLTP)领域始终处于领先地位。 为什么现在很少人知道 Tuxedo ,风光不再呢?因为现在大型企业已经完成核心系统的建设,Tuxedo 在幕后默默无闻地支撑着大型企业的核心业务运行。 20年来,Tuxedo在全球数千家企业的核心业务系统中得到了广泛运用。国外著名的客户有美国联邦速递公司(

2、FedEx),美国西北航空公司(nwa),VISA国际组织、大英电信、日本DoCoMo等,国内著名的客户有中国邮政、中国建行、中国银联、中国电信、中国移动等电信运营商。OLTP:online transcation processing, 大并发,小事务OLAP :online analyze processing, 小并发,大事务交易中间件在产生初期,TUXEDO的定位只是一个在UNIX系统上构建分布式C/S应用程序的框架。而现在,它已经发展成为一个用于构建、执行和管理高性能、分布式C/S应用程序的中间件平台,为企业应用程序提供独立于操作系统和网络的软件服务。作为一个交易中间件,首先,Tux

3、edo具有空前的联机交易性能、高度的可靠性和无限的伸缩性,它提供了一个开放应用环境,可以有效的整合企业级OLTP系统、数据库、网络和主机遗留系统资源,用户可以用它来开发、管理和部署独立于底层硬件、数据库、操作系统和网络的分布式应用系统。其次,Tuxedo系统屏蔽了底层硬件、数据库、操作系统和网络的复杂性,为客户应用系统提供了统一、简单的编程接口,简化了应用系统的开发和集成,使程序员可以把精力集中在业务逻辑的实现上,从而大大的提高了开发质量和效率,缩短了开发周期,减少了系统的开发和维护成本。Tuxedo以自身的复杂性换来了客户应用开发的简单性,实现了自身的价值。采用中间件前的两层结构将应用系统逻

4、辑上分成三个部分:表示层(用户界面) 业务逻辑数据(Resource Manager)用户界面 业务逻辑RMWindows IDE(PB,Delphi,VB,VC etc)RDBMS, File System(1)ClientStoredProcedureRDBMS(Without Business Logic)Business Logic(2)TUXEDO的三层结构TUXEDO带来的价值丰富的通信机制:在两层结构中只能实现“请求/应答”式通信,而在三层结构中则很容易实现同步、异步、嵌套、转发、会话、事件代理、消息通知、消息队列等通信方式;灵活性好:与两层结构比,三层结构提供了最大的灵活性是可

5、扩展性。三层结构中的每一层都是独立的,系统容量可以在项目实施后进行动态调整。例如:可以在中间层部署更多的主机来提高业务处理能力,可以在客户端部署更多的前置机满足营业网点增长的需要;可靠性高:中间应用服务层可以通过集群、负载均衡和容错机制来提供高可靠性和可用性,真正做到724小时不间断对外提供服务;可移植性好:Tuxedo屏蔽了编程语言、操作系统、数据库和网络协议的异构性,使得构筑在这些系统上的应用程序可以轻而易举的移植到其他平台上;可管理性强:在三层结构中,由于业务逻辑都部署在应用服务器上,因此很容易实现集中式管理。可以通过操作系统。TUXEDO的历史1994 V5.0,支持联合模式(/Dom

6、ian),支持与OSF的DCE应用通过TxRPC通信1995 V6.1 提供系统管理编程接口,支持GUI,支持ACL,提供事件代理机制1999 V6.5 引入Java Online Tuxedo部件和SNMP代理;在系统互连方面,加入了与Top End和Message Q的连接网关2000 V7.1 多线程server; 嵌入式 FML; XML 缓冲区; public-private key security ; /Domain MIB2001 V8.0 增强对CORBA应用的支持, 新的负载均衡机制,提高server和Domain性能,加强和Weblogic Server的整合2003 V

7、8.1 目前MISC1.7现网使用的就是该版本。TUXEDO的历史2004 V9.0 在Web Service方面做了进一步的加强,提供了XML Schema和FML之间的双向转换功能。2006 V9.1 在数据库方面,提供了对Oracle RAC的支持。2007 V10.0 这个版本的最大特点是增加了TSAM应用监控管理平台。注:目前BEA公司已经和Oracle合并,后续应该还有新版本的推出。Tuxedo简介Tuxedo客户端目录目录Tuxedo命令Tuxedo开发实例Tuxedo性能优化原则WS方式分析名词说明: WSC: WorkStation Client WSL: WorkStati

8、on ListenerWSH: WorkStation HandlerServer: 小写表示服务器端的服务处理进程 TCP连接是一种C/S模式的,即server端公开自己的IP和端口号,client通过这两个参数与之建立连接,客户端使用的端口一般是OS临时分配的。 TCP server端一般有两种模式,一种是iterative(重复)的,一种concurrent(并发)的。前面一种是一个server的进程(应用层)来处理client的请求,处理完了之后继续接受请求来处理,当server正在处理的过程中,新来的请求得不到处理,只有等待。后面一种是请求到来的时候,server 进程通常会新开一个

9、进程来处理这个请求,自己继续监听公开端口的连接请求。 在TUXEO这种事务处理系统中,会经常有大量的请求,故第一种模式肯定是不行的,第二种模式虽然可以达到同时处理不同请求的目的,但是由于每次要开新的进程,系统的开销很大,也会影响性能。 实际中,TUXEDO的Workstation方式采用了另一种方法来实现多请求的并发处理。 WS方式分析以下是ubb中关于WSL的配置参数:WSL SRVGRP=Group1 SRVID=200 CLOPT=-A -t - -n /ip:port -m 2 -M 10 -x 5 T 10其中ip:port就是TUXEDO服务器的WSL的监听地址,只有一个WSL进程

10、。-m参数指定的是启动时WSH的个数,-M为最大个数(用户数大于m*x时系统会自动启动更多的WSH),-x为每个WSH可以多道处理请求的最大数目,可以理解为WSH的请求缓冲区可以存放十个请求,-T 10表示如果client端和server连接后10分钟内没有交易请求则关闭连接。 这样上面的配置在启动后可以处理并发请求 = 2 * 5 = 10 个,最大可以处理并发请求 = 10 * 5 = 50 个。根据这个配置和相关参数的解释,我们就可以知道TUXEDO采用的处理模式了,TUXEDO在上面TCP的第二种方式之上进行了改进。监听进程还是只有一个(WSL),但是事先已经起了多个处理请求的进程(W

11、SH),每个WSH又可以处理多个请求,这样就保证了大量的请求能同时得到处理,也省去了临时开服务进程的开销。Tuxedo简介Tuxedo客户端目录目录Tuxedo命令Tuxedo开发实例Tuxedo性能优化原则TUXEDO命令-tmloadcf环境变量TUXCONFIG必须设定指向二进制TUXCONFIG文件。tmloadcf :-c计算出当前UBB配置的Tuxedo启动最少要占用的系统IPC资源 ,用于管理员配置资源。-n进行语法检查并不生成TUXCONFIG。-y无条件覆盖TUXCONFIG A = 1420 / 178 = 8阅读:UNIX环境高级编程(Advanced Programmi

12、ng in the UNIX Environment) - W.Richard StevensTUXEDO命令-tmboottmboot :tmboot命令启动TUXEDO系统的应用,创建必要的IPC资源、启动相关机器的规定的系统和应用服务进程。大多数的tmboot的参数启动了部分系统进程。在以下说明和例子中,srvid是配置文件中指定的值。常见命令行参数:-y启动所有Tuxedo进程。-i srvid启动服务id等于srvid的进程。-s server-name启动可执行文件名为server-name的服务。TUXEDO命令-tmshutdowntmshutdown :tmshutdown命

13、令用于关闭所有或部分应用并释放IPC资源。本命令所用参数与tmboot类似(如:-y,-i, -s),意义相同。当有客户端正在连接时,tmshutdown 不能关闭管理服务。参数-c则可以超越此规则。该参数仅用于管理员需要立即关机而又无法及时通知客户端时。参数-w delay 在delay秒后进行强制关闭。指定的服务当即被挂起,使之不能继续接受交易请求。delay的值则允许服务在一个合理的时间内完成已经接受的请求。在延迟的时间到达后,信号SIGKILL(或SIGTERM)将发给指定的服务。该参数目的是使管理员能够关闭发生死循环或死锁的服务。 TUXEDO命令-tmadmintmadmin :通

14、过tmadmin命令可以进入到运行时的监控和管理模下,TUXEDO提供了这种模式下的一系列命令,键入help可以得到所有命令的格式提示.常用的有:printserver (或 psr) :正在运行的server和相关的信息.2. printservice(或psc) :SERVICES的相关信息. TUXEDO命令-tmadmin3. printclient(或pclt) :当前的客户端的信息.4. printqueue(或pq) :服务的队列信息,包括队列中的请求数.TUXEDO命令-tmadmin5. bbstats(或bbs) :系统的部分统计信息.6. quit(或q) :退出管理模式

15、,返回到OS的shellTuxedo简介Tuxedo客户端目录目录Tuxedo命令Tuxedo开发实例Tuxedo性能优化原则TUXEDO开发实例-客户端TUXEDO开发实例-客户端语句说明atmi.h调用ATMI函数必须的头文件tpinit()客户程序调用它来加入应用程序,如果tpinit的参数为NULL,则没有必要显式调用该函数。tpalloc()用于分配类型缓冲区的ATMI函数,STRING是五种BEA Tuxedo缓冲区数据类型之一,sendlen+1表示缓冲区类型,因为以空字符结尾,所以长度加1tpcall()把消息缓冲区送到TOUPPER服务,它提供了响应缓冲区的地址,它一直等待着

16、返回消息。如果此时客户端还没有连接到TUXEDO系统,则系统默认一次tpinit。tpterm()用于退出应用程序的ATMI函数,tpfree()释放分配的缓冲区,是和tpalloc()相对应的函数。TUXEDO开发实例-服务端TUXEDO开发实例-编译编译客户端:buildclient -o ./bin/simpcl -f simpcl.c编译服务端:buildserver -o ./bin/simpserv -f simpserv.c -s TOUPPERTUXEDO开发实例-UBBTUXEDO开发实例编译UBB文件:-bash-2.05b $tmloadcf ubbReally over

17、write TUXCONFIG file: /home/simgw/simgateway/bin/tux_ubb_config y, q ? Y启动服务端:TUXEDO开发实例查看进程:TUXEDO开发实例查看IPC资源:TUXEDO开发实例运行客户端:-bash-2.05b$ simpcl hello, worldReturned string is: HELLO, WORLD关闭服务端:详细请参考:BEA Tuxedo ATMI C Function Reference.pdfBEA Tuxedo ATMI FML Function Reference.pdfProgramming a B

18、EA Tuxedo ATMI Application Using C.pdfProgramming a BEA Tuxedo ATMI Application Using FML.pdfUsing Security in ATMI Applications.pdfTuxedo简介Tuxedo客户端目录目录Tuxedo命令Tuxedo开发实例Tuxedo性能优化原则TUXEDO性能优化原则MSSQ原则通过配置MSSQ(Multiple Server Single Queue)的方式来提高性能。由于多个相同的服务器共享同一个请求队列,所以消息总是被送到第一个空闲的服务器中去处理。这种方式不但减少了

19、消息队列的数量,而且优化利用了服务器的处理时间。MSSQ中的所有服务器都是一样的,即提供相同的服务,它们之间可以互为备份,某些服务器发生阻塞或者挂起时,不会对其它服务器造成影响。配置示例如下:通过执行:tmadminpsr命令,得出如下输出TUXEDO性能优化原则参数配置原则通过合理配置以下参数可以提高系统的效率。MAXSERVERS:指定公告板可以容纳的最大服务器数量,取值在0,8192之间,默认取值为50.所有系统提供的服务器和用户开发的服务器都计算在内。MAXSERVICES:指定公告板中最大可以容纳的服务数量,取值在0,32768之间,默认取值为100,注:MAXSERVERS 、MA

20、XSERVICES。这些参数增加了信号量和共享内存的消耗,在配置这些参数时,需要权衡利弊,指定一个合适的值。应该充分地考虑到系统的伸缩性和并发用户的数量,取值太大会造成资源浪费,太小会导致系统无法启动和性能下降。MAXWSCLIENTS:设置最多允许多少个工作站客户端同时连接到Tuxedo系统上,取值与所购买的并发license数量有关,可比license数稍大一些。当并发连接数大于并发license时,Tuxedo会在ULOG中记录告警信息,当超过10%时,Tuxedo会拒绝新的工作站接入,客户机的tpinit会失败。TUXEDO性能优化原则服务绑定原则服务绑定指的是服务器与服务的包含关系。如果一个服务器只包含一个服务,则称为“一对一”;如果一个服务器包含多个服务,则称为“一对多”。从管理维护的角度来看,“一对一”的绑定关系是最简单高效的,但如果在服务非常多的情况下,服务器对IPC资源的消耗就不容忽视了,这可能造成Tuxedo不能启动或者性能下降。针对服务绑定问题,下面给出几点建议。把业务功能类似的服务绑定在一个服务器中

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论