Tuxedo(一)基础介绍_第1页
Tuxedo(一)基础介绍_第2页
Tuxedo(一)基础介绍_第3页
Tuxedo(一)基础介绍_第4页
Tuxedo(一)基础介绍_第5页
已阅读5页,还剩46页未读 继续免费阅读

下载本文档

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

文档简介

1、 Copyright 2010 Global InfoTech.成都分软易东中间件的定义中间件的定义顾名思义,中间件处于操作系统软件与用户的应用软件的中间。中间件是一类软件,而非一种软件;中间件不仅仅实现互连,还要实现应用之间的互操作;中间件是基于分布式处理的软件,最突出的特点是其网络通信功能。 中间件(middleware)是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机和服务器的操作系统之上,管理计算资源和网络通信。中间件的定位中间件的定位中间件在操作系统、网络和数据库之上,应用软件的下层,为处于自己上层的应用软件提供运行与开发的环境,帮

2、助用户灵活、高效地开发和集成复杂的应用软件。中间件是构造三层结构的基础中间件是构造三层结构的基础三层体系结构,即用户层、应用层和数据库服务器。用户层主要指用户界面,它要求尽可能的简单,使最终用户不需要进行任何培训就能方便地访问信息;第二层就是应用服务器,也就是常说的中间件,所有的应用系统、应用逻辑、控制都在这一层,系统的复杂性也主要体现在应用层;最后的数据库服务器存储大量的数据信息和数据逻辑,所有与数据有关的安全、完整性控制、数据的一致性、并发操作等都是在第三层完成。 三层结构三层结构三层结构说明三层结构说明 从左边往右依次为:客户端层(表现层),中间件服务层(业务逻辑层),数据库服务器层(数

3、据层)。这种典型的三层架构应用非常广泛。对于应用weblogic中间件的系统一般采用的B/S架构,绝大部分采用HTTP协议,少量的系统用java编写的客户端,使用的是RMI 协议,或J2EE里的其它协议。对于tuxedo中间件使用的是tuxedo协议,前端开发工具可以是各式各样,VC+ 、java 、Delphi 、VB 等。中间件使用带来的好处中间件使用带来的好处保证全局事务完整性保证大规模并发处理响应对异构系统互联的透明支持卓越的扩展能力 应用可管理性强安全、可靠TUXEDOTUXEDO是什么是什么 Copyright 2010 Global InfoTech.TUXEDO名字的由来:Tr

4、ansaction for UNIX has been Extended for Distributed Operation,即被分布式操作扩展之后的UNIX事务系统 。Tuxedo是BEA公司(现已被Oracle公司收购)的一个客户机/服务器的“中间件”产品,它在客户机和服务器之间进行调节,以保证正确地处理事务。它用C语言技术开发的并且有很高性能。BEA TUXEDO是在企业、Internet 这样的分布式运算环境中开发和管理三层结构的客 户/服务器型关键任务应用系统的强有力工具。它具备分布式事务处理和应用通信功能,并提供完善的各种服务来建立、运行和管理关键任务应用系统。开发人员能够用它建立

5、跨多个硬件平台、数据库和操作系统的可互操作的应用系统。TUXEDOTUXEDO的产生的产生Tuxedo是1984年在当时属于AT&T的贝尔实验室开发完成的,但由于分布式处理当时并没有在商业应用上获得像今天一样的成功,Tuxedo在很长一段时期里只是实验室产品,后来被Novell收购,在经过Novell并不成功的商业推广之后,1995年被BEA公司收购。尽管中间件的概念很早就已经产生,但中间件技术的广泛运用却是在近10年之中。BEA公司1995年成立后收购Tuxedo才成为一个真正的中间件厂商。随着Oracle收购了BEA公司,Tuxedo已经成为Oracle公司产品。Tuxedo 已经

6、广泛地应用于金融、电信、制造业等各行各业的核心业务系统。TUXEDOTUXEDO应用服务模型应用服务模型Tuxedo Server登录和提供Services给Tuxedo clients。这些Servers提供到DBMS或其它受控资源的访问。Tuxedo Clients发出请求到指定Service。前台服务请求在应用服务器层被路由和分发到一个配置了的Server(提供Services)。Tuxedo Servers能分布在多台应用服务器主机上,而且可统一配置和管理。TUXEDOTUXEDO核心构件核心构件TUXEDOTUXEDO核心构件说明核心构件说明Name Sevices:前台服务请求被路

7、由和分发到提供该服务的Server。Services“目录”由Tuxedo维护和发布。Transparent Communication:Clients和Servers之间是通过消息进行相互通讯的。Tuxedo API为应用开发者提供基本的系统通讯以及透明的网络传输。不管Tuxedo应用部署在一台还是多台服务器上,都可以通过同样的方式来管理和配置Tuxedo还提供了事务监控和管理的功能,使用此功能来协调不同资源之间的分布式事务TUXEDOTUXEDO的配置文件的配置文件每个tuxedo应用程序都有一套配置文件,它告诉TUXEDO系统,应该如何配置和部署服务进程,应该为服务进程提供什么样的运行环

8、境。Tuxedo的配置文件一般包括两个:Ubbconfig:TUXEDO应用系统的基本参数配置,实现tuxedo系统的基本管理和运行。Domconfig:TUXEDO应用系统域信息的配置,实现tuxedo的域间通讯。UbbconfigUbbconfig定义定义 Copyright 2010 Global InfoTech.应用的描述信息配置在系统核心位置,用一个文件描述,通常称为ubbconfig文件,在主控机器上。整个TUXEDO系统的管理任务可以在一台机器上完成,在配置中被定为主控节点。 任何TUXEDO应用系统的最基本的管理任务,是建立并维护配置文件。负责该工作的系统管理员必须很好的了解

9、分布于各台机器上的应用服务的数据流,消息队列的构造,资源间的相互关系。ubbconfig文件可视作包含应用启动信息的容器,需编译成二进制文件tuxconfig,作为启动时的参考。UbbconfigUbbconfig的工作原理的工作原理在运行时,这些信息被装入一段共享内存(一个IPC资源),称为公告牌(Bulletin BoardBB);包含有配置中不同机器的信息,在这些机器上运行的服务的信息,这些服务提供的交易的信息以及其他相关信息。客户端在运行时连接公告牌。当客户端程序调用一个交易,将根据公告牌找到合适的服务队列。TUXEDO提供一个管理进程,称为BBL(Bulletin Board Lia

10、ison),包含了一个公告牌的本地拷贝和本地服务器上应用的状态。 UbbconfigUbbconfig分析与配置分析与配置 Copyright 2010 Global InfoTech.ubbconfig内容信息包括: 系统范围信息(*RESOURCES节) 机器信息(*MACHINES节) 组信息(*GROUPS节) 服务信息(*SERVERS节) 交易信息(*SERVICES节) 网络组信息(*NETGROUPS节) 网络信息(*NETWORK节) 路由原则信息(*ROUTING节)UbbconfigUbbconfig分析与配置分析与配置Slide 17 Copyright 2010 Gl

11、obal InfoTech.*RESOURCES节包含整个应用范围的信息。本节必须在配置文件第一节,不可缺少。信息说明如下:参数意义*RESOURCES *RESOURCES节IPCKEY 共享内存idUID TUXEDO管理员用户idGID TUXEDO管理员用户组idPERM TUXEDO管理员组用户的权限MAXACCESSERS 服务端和客户端的最大进程数MAXSERVERS 限制可以启动服务总数MAXSERVICES 限制可以发布交易总数MASTER 指出主控节点的逻辑名,第二个是备份节点MODEL 应用构架,MP表示多机OPTIONS LAN,MIGRATE表示是一个网络应用,服务可

12、以移植到替代处理器上UbbconfigUbbconfig分析与配置分析与配置SECURITY 安全级别(5个)AUTHSVC 客户端可以通过交易“AUTHSVC”获得认证NOTIFY DIPIN,客户端通过dip-in收到广播通知SYSTEM_ACCESS PROTECTED,NO_OVERRIDE,应用代码不得干扰共享内存LDBAL 设Y则进行负载平衡MAXBUFSTYPE 数据缓冲类型及子类的最大数SCANUNIT 内部时间间隔单位,单位是秒SANITYSCAN 检索公告牌的内部时间间隔,单位是SCANUNITBLOCKTIME 交易超时时间,单位是SCANUNITBBLQUERY DBB

13、L查询所有BLL的时间间隔DBBLWAIT DBBL等待BBL回应的超时时间MAXCONV 同时最大会话数 UbbconfigUbbconfig分析与配置分析与配置*MACHINES节包含应用有关的每个处理器的信息。本节必须在*RESOURCES节后列出。参数 意义*MACHINESMACHINES节gumby物理处理器名,可以通过”uname n”或节点名得到TUXDIRTUXEDO系统软件安装位置APPDIR应用服务位置全路径TUXCONFIGTUXEDO配置文件全路径ENVFILE环境文件全路径ULOGPFX应用日志文件全路径MAXACCESSERS本机最多处理器数,可以超越*RESOU

14、RCES节定义MAXCONV本机最大会话数,可以超越*RESOURCES节定义 Copyright 2010 Global InfoTech.20Slide 20UbbconfigUbbconfig分析与配置分析与配置 Copyright 2010 Global InfoTech.*GROUP节包含服务组的定义。一台机器至少要定义一个服务组。如果没有定义组,管理命令tmadmin可能依然能运行。每个组只要定义组名,映射组名的组号和逻辑机器名。组为分布式交易系统和数据依赖路由等灵活性措施提供了支持。参数意义*GROUPSGROUP节GRPNAME组的唯一标识符,可以是字母数字GRPNO组的唯一数

15、字标识符LMID组所在的机器Slide 21 Copyright 2010 Global InfoTech.UbbconfigUbbconfig分析与配置分析与配置*SERVERS节包含的是服务进程的信息。本节中每一个入口代表一个应用启动时加载的服务。这些信息包含服务名,命令行参数,服务环境,重启动等等。由于每个服务功能各不相同,其配置参数也因此相同或相异。参数意义*SERVERSSERVER节,列出所有服务程序DEFAULT:本处列出的参数为其下列出的服务的缺省值,但可以被单列条目替代相应值RESTART如果设成Y,则服务可以重启动MAXGEN在GRACE定义时间之内,服务可以重启动MAXG

16、EN次GRACE周期,单位是秒RCMD每次服务重启动,本处定义的脚本或命令被执行UbbconfigUbbconfig分析与配置分析与配置ENVFILE 列有环境变量的文件,在交易启动前设入环境TLR 一个服务名,用buildserver建立,应在APPDIR或$TUXDIR/binSRVGRP服务属于一个在*GROUPS节中定义的服务组;也可以定义在多个组中。SRVID服务组中代表服务的唯一值MIN最少在启动时启动的服务数MAX运行时,最多可以起的实例数CLOPT跟随服务启动的其他参数UbbconfigUbbconfig分析与配置分析与配置使用TUXEDO组件DOMAINS时,必须配置以下3个

17、服务:服务GWTDOMAIN(GWT)负责响应域间通讯。GWADM和DMADM是处理管理交易和域服务的管理服务。服务GWTDOMAIN通过TCP/IP协议与其他域进行通讯。物理上远程的域的应用位置是透明的。服务GWTDOMAIN是双向的:可以处理远程域发来的请求也可以向远程域发出请求。24Slide 24 Copyright 2010 Global InfoTech.UbbconfigUbbconfig分析与配置分析与配置*SERVICES节提供了应用的特殊交易的信息。包括负载平衡(LOAD)和数据缓冲类型检查(BUFTYPE)。如果全部都是缺省值则本节可以省略。参数意义*SERVICES交易

18、节SERVICENAME交易名(服务名),由应用服务提供BUFTYPE任何向该交易的请求,数据应该是此处定义类型GROUP交易所在服务所在的组LOAD负载因子,表示处理请求的时间,用于计算负载平衡PRIO优先级 25 Copyright 2010 Global InfoTech.UbbconfigUbbconfig分析与配置分析与配置*ROUTING节提供了应用的路由信息。参数意义*ROUTING路由信息DRRNAME路由入口名称(自己指定)FIELD路由字段名BUFTYPE缓冲区类型RANGES路由范围最后,执行最后,执行tmloadcf y ubbcofig 生成生成tuxconfig文件

19、文件DomconfigDomconfig的定义的定义当多个域之间有Tuxedo服务调用关系,必须通过域连接才能实现正常调用,实现域连接和域之间的通讯的配置文件就叫domconfig,编译后的二进制文件名为BDMCONFIG。DomcofigDomcofig的工作原理的工作原理Domain作为TUXEDO的一组件,使独立的TUXEDO应用可以进行通讯和共享资源。每个应用环境视作一个domain。一个域可以跨越多台(个)机器或处理器。所有的客户端通过BB(Bulletin Board)了解所有的机器上提供的交易。BB间的一致性通过DBBL(Distinguished Bulletin Board

20、Liaison)来保证。通过Domain,可以维护独立于主域的BB,可以设定那些交易可以响应其他机器。当一个远程域提出一个合法的交易请求时,/Domain将请求发送到被请求域并把返回送到请求进程。DomconfigDomconfig的分析与配置的分析与配置在配置domconfig的过程中,需要引用ubbconfig配置文件中已配置的信息,其中包括用于网关服务的组信息。Domconfig文件中包括:DM_LOCAL_DOMAINSDM_REMOTE_DOMAINSDM_TDOMAINDM_REMOTE_SERVICESDM_LOCAL_SERVICESDomconfigDomconfig的分析与

21、配置的分析与配置*DM_RESOURCESVERSION=U22DM_LOCAL_DOMAINS定义本地tuxedo域的信息,分别定义该域所在的组,域类型,域的唯一标识,域间通信时日志的全路径,其中GWGRP, DOMAINID的值要与ubb文件中的定义匹配.*DM_LOCAL_DOMAINSTEST_TUXDOM GWGRP=LGWGRP TYPE=TDOMAIN DOMAINID=“TEST_TUXDOM BLOCKTIME=30 MAXRDOM=100 DMTLOGDEV=/home/ap/test/log/DMTLOGdomconfigdomconfig分析与配置分析与配置#DM_RE

22、MOTE_DOMAINS定义远程域的信息,分别定义域类型,域的唯一性标识,该id标识需要与在weblogic server中的配置名称吻合,否则通信将会失败,关于在weblogic中的相应配置下文将作详细描述#*DM_REMOTE_DOMAINSTEST_RE_DOM1 TYPE=TDOMAIN DOMAINID=TEST_RE_DOM1TEST_RE_DOM2 TYPE=TDOMAIN DOMAINID=TEST_RE_DOM2DM_TDOMAIN定义在DM_LOCAL_DOMAIN中已经说明的本地域和在DM_REMOTE_DOMAINS中已经说明的远程域的具体的通信ip地址以及通信端口,其

23、中NWDEVICE指定tuxedo发布的server通信进程文件所在的路径#*DM_TDOMAINTEST_TUXDOM NWADDR=/10:8888 NWDEVICE=/dev/tcpTEST_RE_DOM1 NWADDR=/1:15118TEST_RE_DOM2 NWADDR=/4:9999domconfigdomconfig分析与配置分析与配置DDM_REMOTE_SERVICES定义当前域需要调用远程域的服务名称,本例中的服务作为被调用服务,所以此处可以为空#*DM_REMOTE_SERVICES“servername”

24、 RACCESSPOINT= TEST_RE_DOM1DM_LOCAL_SERVICES定义当前域对外发布的tuxedo service名称,可以通过RNAME重新命名service#*DM_LOCAL_SERVICES“SERVICE1” COUPLING=LOOSE 最后,执行dmloadcf y domcofig 生成bdmconfig文件TuxedoTuxedo通讯缓冲区类型通讯缓冲区类型 Copyright 2010 Global InfoTech.1、String 主要用于面向行、变长度的文本信息类型,以NULL结尾的字符串,类似C语言的字符串。支持自动编码,解码。不支持数据依赖路

25、由(DDR),一般用在client和server之间传送文本数据。TuxedoTuxedo通讯缓冲区类型通讯缓冲区类型2、CARRAY 一个定长字符串数组,但不是以0结尾的,同时可以包含NULL字符,是一种独立于机器的buffer类型,所以carry处理数据是不透明的。在传送时要定义长度,那么由于各类机器的编码规则不同,它不支持自动编解码,也不支持数据依赖路由(DDR)。一般用在client和server之间传送汉字、二进制数据、文件、图形等。CARRAY类型可以作为FML(FML32)、VIEW(VIEW32)的数据类型子项.TuxedoTuxedo通讯缓冲区类型通讯缓冲区类型3、FML 、

26、FML32 FML类型允许存取多个命名的字段。例如:(NAME: BEA,ADDRESS China Beijing,PHONE。每一个命名的字段可以在buffer中存放零个或更多个(occurrences)的值. FML:Field Manipulation Languag,这是tuxedo私有的buffer。FML32:和FML类似,只是32位的。FML(FML32)在发送时,只发送真正用到的数据,这一点和其他缓冲区类型不一样。比如分配的缓冲区的大小为1M,但真正用到的空间只有1K,那么在发送时只发送这1K的数据,如果是其他类型的缓冲区时也是发送1M的数据。Tu

27、xedoTuxedo通讯缓冲区类型通讯缓冲区类型 使用FML报文,需要编写flds文件同时设计环境变量FIELDTBLS32 和FLDTBLDIR32 base 值 16位为 101 到 8191,32位为 101-33 554 431 flds编译 mkfldhdr32 myfml.flds生成myfml.fml32 *base 100# namenumber typeflagscomments FLOAT11float- DOUBLE12double - LONG13long- SHORT14short- STRING15stringTuxedoTuxedo通讯缓冲区类型通讯缓冲区类型4、

28、VIEW 、VIEW32 VIEW:应用自定义的一组C结构。必须有子类型(为该VIEW的名字)描述单个的数据结构。Tuxedo使用VIEW类型处理类似C语言的结构等数据类型复杂数据。使用VIEW类型buffer可以将各数据元素与一种结构数据类型结合,通过结构就可以访问各数据元素。VIEW类型数据即使没有没有数据也占用空间,结构发生变化,需要重新编译程序。 VIEW32:和VIEW类似,只是32位的。TuxedoTuxedo通讯缓冲区类型通讯缓冲区类型使用VIEW报文缓冲区,需要编写view文件同时设计环境变量 VIEWFILES32 和VIEWDIR32编译view文件 viewc32 myv

29、iew.v (生成 myview.V myview.h) VIEW accjz #type cnamefbnamecountflagsizenull string i_strSTRING11-7 longi_long LONG11- 0TuxedoTuxedo通讯缓冲区类型通讯缓冲区类型把FML和VIEW结合起来使用可以得到最佳性能依赖fml的view结构。必须先生成fml并且编译,然后再生成view。使用VIEW(C语言结构)给字段赋值把VIEW转换成FML进行传输,其中取值为0或NULL的字段将被忽略tpcall/tpforward/tpreturn中使用FML缓冲区传输数据在接收端把FM

30、L转换成VIEW格式进行字段访问 TuxedoTuxedo通讯缓冲区类型通讯缓冲区类型5、XML 从7.1开始支持了xml类型,使用中必须定义缓冲区的长度。6、MBSTRINGTUXEDO8.1通过MBSTRING缓冲区对中、日、韩和其他亚洲语种提供了多字节的支持,使用MBSTRING缓冲区多字节的编码特征,TUXEDO系统可以对在不同进程之间传输的MBSTRING进行编码转换。Slide 40 Copyright 2010 Global InfoTech. 同步调用 异步调用 转发调用 会话通信 消息通告 事件代理 队列通信 TxRPCTuxedoTuxedo的通讯方式的通讯方式请求请求/ /应答的通讯方式应答的通讯方式请求/应答式通信是OLTP系统中用得最多的一种方式,客户机发出服务请求,服务器作出回应。这种通信方式包括:同步调用异步调用转发调用 Copyright 2010 Global

温馨提示

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

最新文档

评论

0/150

提交评论