tuxedo应用
- 格式:ppt
- 大小:220.50 KB
- 文档页数:2
TUXEDO中间件介绍及应用TUXEDO(Tuxedo Extended Distributed Object)是一种中间件技术,用于分布式应用程序的开发和管理。
它在1980年代初由AT&T Bell Laboratories开发,旨在帮助开发人员构建可靠的、复杂的分布式应用程序。
TUXEDO的主要特点是具有高度可伸缩性和可靠性。
它采用了基于事务的处理模型,在分布式环境中管理事务处理非常重要。
TUXEDO使用一种称为QT(Queueing and Transaction)的机制来处理事务,它能够确保在分布式环境中的多个服务器之间的事务一致性。
TUXEDO提供了一个面向服务的架构,允许开发人员将应用程序划分为一系列可重用的服务。
这些服务被封装在名为“服务进程(service processes)”的单独运行实体中。
TUXEDO还提供了一个名为“Bulletin Board”的中央注册表,用于跟踪可用服务的位置和状态。
通过这种方式,开发人员可以根据需要动态添加或删除服务,而不会中断正在运行的应用程序。
除了事务管理和服务管理功能外,TUXEDO还提供了一些其他的功能,使开发人员能够更轻松地开发和管理分布式应用程序。
例如,它提供了监视和诊断工具,用于跟踪应用程序的性能和健康状况。
它还提供了故障恢复功能,可以在节点失败时自动重启或迁移服务。
TUXEDO中间件在许多行业中得到广泛应用,尤其是那些需要构建高可靠性和高性能的分布式应用程序的领域。
例如,金融领域的交易处理系统、电信领域的网络管理系统以及电子商务领域的订单处理系统等都可以使用TUXEDO来实现。
总之,TUXEDO是一种先进的中间件技术,用于构建和管理复杂的分布式应用程序。
它提供了高度可伸缩和可靠的处理模型,支持事务管理、服务管理和分布式锁等强大功能。
它在各种行业中得到广泛应用,特别是那些需要高可靠性和高性能的应用程序领域。
tuxedo配置和服务部署TUXEDO应用服务配置、部署手册1. WINDOWS环境下TUXEDO服务端应用程序的部署和配置1.1 tuxedo的安装确定安装介质(Tuxedo安装程序)运行Setup图表 -1 Tuxedo安装向导图表-2 Tuxedo安装向导点击“Next”,继续图表 -3 许可证协议选择“YES”,继续图表 -4:选择安装类型选择“Full Installation”,继续图表 -5 制定安装路径路径设为“d:\bea”,继续图表 -6 产品路径6.路径设为“d:\bea\tuxedo”,继续图表 -7安装程序开始拷贝文件等待安装程序拷贝文件。
图表 -8输入Listen password输入Listen password,输入两个相同的密码,“lp”,继续图表 -9安装SSL选择“NO”,继续图表-10:安装LDAP取安装程序的默认值,继续图表 -11:安装License 选择“no”,继续图表 -12:Tuxedo安装完毕安装完毕注意事项LIC的安装假设TUXEDO安装在d:\bea\tuxedo,在udataobj子目录中考入lic.txt1.2 应用程序的配置关于环境变量的配置,setenv.bat文件格式如下:rem Copyright (c) 1995 Novell, Inc.rem All Rights Reservedrem THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OFrem Novell, Inc.rem The copyright notice above does not evidence anyrem actual or intended publication of such source code.rem Copyright (c) 1995 Novell, Inc.rem All rights reservedrem ident "@(#) apps/simpapp/setenv.cmd $Revision: 1.1 $"set TUXDIR=d:\bea\tuxedoset WSNADDR=//10.233.128.18:8888set APPDIR=d:\ydlwset PATH=%TUXDIR%\bin;%APPDIR%;%PATH%set LIB=%LIB%;d:\Oracle\Ora9\precomp\lib\msvc;set TUXCONFIG=%APPDIR%\tuxconfigset FIELDTBLS32=qqdata,fhdata,yhfymx,comfldset FLDTBLDIR32=%APPDIR%;%TUXDIR%\udataobjcall %APPDIR%\VCVARS32.BAT需要注意的地方用红色标记,其中TUXEDO为tuxedo的安装主目录,APPDIR 为应用程序主目录,根据实际情况进行修改。
TUXEDO配置参数详解2007-07-10 09:39:47大中小TUXEDO应用系统的配置3.1 TUXEDO应用系统的常见配置配置文件UBBCONFIG介绍一个TUXEDO应用系统的所有资源都在一个文本文件中进行定义,该文件称为UBBCONFIG,在配置完成后,UBBCONFIG被编译成一个二进制的文件TUXCONFIG.在TUXEDO系统启动时,从该文件中读取系统的配置信息。
UBBCONFIG文件类似WINDOWS下的*.INI文件。
它包括以下9大部分, 我们称之为节,RESOURCES,MACHIENS,GROUPS这三个节必须的,其他的节是可选的。
RESOURCES(必需): 与整个系统有关的配置信息MACHINES(必需): 一个TUXEDO应用系统可以跨越多台服务器,在该节中配置与每台服务器有关的信息GROUPS(必需): TUXEDO中的服务可被分为多个组,在该节中配置与组有关的信息SERVERS(可选): 与SERVER有关的信息在该节配置SERVICES(可选): 与SERVICES有关的信息在该节配置NETWORK(可选):与网络有关的信息在该节配置ROUTING(可选) :路由规则在该节配置NETGROUPS(可选):与网络分组有关的信息在该节配置名称解释:TUXEDO应用系统一个TUXEDO应用系统包括服务端,客户端,服务端安装在服务器上,客户端一般安装在PC 机上,从开发角度看,一个TUXEDO应用系统包括服务端程序,客户端程序,一个配置文件。
此外,一个TUXEDO应用系统可以部署在一台服务器上,也可以部署在多台服务器上。
SERVER:服务端程序用C或COBAL编写,每一个程序文件编译成一个相应可执行文件,该可执行文件在运行时称为SERVER,它实际上就是一个进程。
每个SERVER都有一个名字,也就是该进程的名字。
为与TUXEDO应用系统的服务端区分,我们在本书中,我们用SERVER表示该进程,用服务端表示TUXEDO应用系统的服务端。
Tuxedo软件安装及使用1前言Tuxedo是ORACLE公司的分布式运算环境下开发和管理三层客户/服务器结构应用系统的中间件产品,具备分布式事务处理和应用通信功能,并提供完善的各种服务来建立、运行和管理关键任务应用系统。
Tuxedo屏蔽分布式环境中各种通信协议、硬件体系结构、操作系统、数据库和其它应用服务等方面的差异,使得分布于网络节点上的应用程序的各个单元部件之间能够进行互操作,并协调操作的一致性和完整性,最大限度地节省系统资源,提高系统性能。
开发人员能够用它建立跨多个硬件平台、数据库和操作系统的可互操作的分布式应用系统,因而广泛地应用于金融、电信、制造业等各行各业的核心业务系统。
本文简要介绍Tuxedo的安装和使用,使得读者可以快速入门。
2软件安装为避免多机部署时可能出现的用户组、用户、目录位置问题,建议各机器的安装tuxedo 的用户组、用户名、目录位置均相同。
各资源规划如下表:2.1创建组及用户为避免安全性问题,应创建专属的用户和用户组运行tuxedo,并不得使用root。
本文档假定用户名是tuxedo,用户组也是tuxedo。
(1)创建tuxedo组;(2)创建tuxedo用户;(3)设置tuxedo用户登录密码;(4)创建安装目标目录并授权。
2.2安装GCCTuxedo示例程序使用C语言编写,为编译示例程序,需安装C语言开发环境。
将安装光盘介质mount到操作系统相应目录(如/media)后,参考下列命令安装开发环境。
安装开发环境的详细命令,可以参考操作系统相关手册。
2.3安装JRETuxedo的安装包需要JRE才能运行,因此需要先安装JRE,并设置JA V A_HOME环境变量指向新安装的JRE,设置PA TH添加java所在的目录。
本文档选择JDK的server-rumtime 版本作为JA V A运行环境。
(1)上传安装包server-jre-8u162-linux-x64.tar.gz到/tmp。
Tuxedo教程全解contents •Tuxedo概述•Tuxedo核心组件•Tuxedo应用开发•Tuxedo系统部署与配置•Tuxedo性能优化与监控•Tuxedo实战案例解析目录Tuxedo概述Tuxedo定义与特点Tuxedo是一种中间件Tuxedo的特点Tuxedo应用领域金融行业电信行业其他行业Tuxedo发展历程Tuxedo的起源Tuxedo的发展Tuxedo 的未来Tuxedo核心组件ATMI编程接口支持多种编程语言,如提供了事务管理、通信、安全等方面的功能。
Tuxedo服务器123Tuxedo客户端010203Tuxedo管理工具Tuxedo应用开发开发环境搭建安装Tuxedo系统配置环境变量选择开发工具建立项目工程设计服务接口编写服务代码配置服务属性编译和部署服务服务开发流程根据业务需求设计客户端界面,包括输入、输出显示等。
设计客户端界面编写客户端代码配置客户端属性编译和部署客户端使用Tuxedo 提供的API 编写客户端代码,实现与服务端的交互。
在配置文件中配置客户端相关属性,如连接的服务地址、端口等。
使用Tuxedo 提供的编译工具将客户端代码编译成可执行文件,并部署到用户环境中。
客户端开发流程日志调试通过查看Tuxedo系统日志和应用程序日志定位问题原因。
跟踪调试使用Tuxedo提供的跟踪工具对服务调用进行跟踪调试,查看调用过程和结果。
单元测试针对每个服务或函数编写单元测试代码进行测试验证功能正确性。
集成测试将所有服务集成在一起进行测试验证整个系统的功能正确性。
调试与测试方法Tuxedo系统部署与配置系统部署方案单机部署01分布式部署02集群部署03服务器参数配置事务管理配置资源管理配置包括客户端名称、服务器地址、端口号等参数的配置。
客户端参数配置配置客户端事务的提交和回滚方式,确保客户端与服务器之间的事务一致性。
事务管理配置配置客户端的负载均衡策略,实现请求的均匀分配和故障转移。
<Insert Picture Here>Tuxedo 典型问题Tuxedo应用内存泄漏(Memory Leak) Tuxedo应用核心转储(Core Dump) Tuxedo应用阻塞Tuxedo应用挂起Tuxedo优化策略Tuxedo应用内存泄漏(Memory Leak)✓问题现象✓原因分析✓解决方法Tuxedo应用核心转储(Core Dump) Tuxedo应用阻塞Tuxedo应用挂起Tuxedo优化策略问题现象•从整个系统的角度看,存在内存泄漏会造成系统的空闲内存不断减小,极端情况下有可能造成操作系统运行缓慢或宕机•从进程角度来看,存在内存泄漏的进程,它的进程空间会不断增加(通过”ps –elf”、AIX的”svmon”查看进程)原因分析•内存泄漏是指程序对于一块动态申请的内存失去了参照指针,造成内存块无法释放的现象•内存泄漏是由于在程序中调用malloc或者类似功能函数申请内存,却没有在程序中调用free或者类似功能函数释放引起的原因分析•应用代码从经验来看,这是内存泄漏问题经常出现的地方。
包括的形式:–忽略对申请的内存释放。
比如在代码开始时申请了一块空间,但是在程序结束时却忽略了去释放此块内存。
–指针使用不当。
在做指针赋值时,没有释放已有的内存空间,就将它指向另一个内存空间。
–数据库游标的使用不当。
在程序中,如果使用了数据库的游标,需要在程序返回时,将游标关闭。
–采用C++编程时,没有正确的调用析构函数原因分析•数据库在客户的项目中,出现过数据库提供的函数存在内存泄漏,如:–Oracle的OCI链接库–Sybase的Open Client的链接库•Tuxedo–C++编写服务端service时,tpreturn跳出析构函数的执行–tpalloc和tprealloc内存的释放不正确•操作系统–C的lib库存在内存泄漏问题解决方法•检查应用代码。
–检查内存的申请和释放是否匹配–检查指针在赋值时,是否释放已有内存空间–检查游标的打开和关闭是否匹配–检查析构函数是否被调用•采用隔离的方法分析代码–对于存在内存泄漏的代码可以采用将代码分段隔离的方法来查找•采用相应的工具软件分析代码–现在有很多的查找内存泄漏的工具。
tuxedo命令和配置的详细解释及应用实例域的组成BDMCONFIG:二进制配置文件DMADM:域管理服务器,管理多个GWADMGWADM:运行时网关管理服务器,从DMADM服务器上获取域信息GWTDOMAIN:是一个网关进程,在域之间转发消息tmshutdown/tmboot -s 服务名按服务名停/启单个服务tmshutdown/tmboot -S (大写的S)停/启所有服务tmshutdown/tmboot -i 进程号按进程号停/启单个服务tmshutdown/tmboot -g 组名字按组停/启服务tmshutdown/tmboot -y -w1 按用户停/启服务tmloadcf -n 文件名只做语法检查不编译tmloadcf -y 文件名编译二进制文件tmloadcf -c 文件名测试IPC资源最小需求tmadmin -v 版本tmadmin>bbp 查BB的参数bbs BB统计信息pclt 连接客户端信息psr server信息psc service信息pt 当前事物信息pq 队列信息echo psr|tmadmin|grep -v IDLEecho psr|tmadmin|sort +4echo psc|tmadmin|sort +6echo pq|tmadmin|sort +4echo pclt|tmadmin|grep -v WSH|grep -v tmadmin以下是tmadmin命令的printserver(简写为psr)的简单输出。
列号描述1. 服务的可执行文件名2. 服务连接的队列名3. 组名4. 服务的数字id5. 服务已经处理的请求数6. 服务处理的全部请求的参数和7. 服务正在处理的交易,若为IDLE则服务当前是空闲ccsmis:/home2/ccsmis>tmadmintmadmin - Copyright (c) 1996 BEA Systems, Inc.Portions * Copyright 1986-1997 RSA Data Security, Inc.All Rights Reserved.Distributed under license by BEA Systems, Inc.Tuxedo is a registered trademark.> printserverProg Name Queue Name Grp Name ID RqDone Load Done Current Service --------- ---------- -------- -- ------ --------- --------------- rz_Ecsb 00004.04000 APGP2 4000 0 0 ( IDLE )BBL 70020 simple 0 1 50 ( IDLE ) IFMTMS APGP2_TMS APGP2 30001 1 50 ( IDLE )交易信息来自GAI的信息本处略去。
UBBCONFIG文件详解TUXEDO应用的描述信息配置在系统核心位置,用一个文件描述,通常称为ubbconfig文件,在主控机器上。
整个TUXEDO系统的管理任务可以在一台机器上完成,在配置中被定为主控节点。
在运行时,这些信息被装入一段共享内存(一个IPC资源),称为公告牌(Bulletin Board—BB);包含有配置中不同机器的信息,在这些机器上运行的服务的信息,这些服务提供的交易的信息以及其他相关信息。
客户端在运行时连接公告牌。
当客户端程序调用一个交易,将根据公告牌找到合适的服务队列。
所以,公告牌是:——供客户端寻找适当的服务运行一个交易请求——包含应用信息:机器,服务,交易,网络等——创建于ubbconfig文件TUXEDO提供一个管理进程,称为BBL(Bulletin Board Liaison),包含了一个公告牌的本地拷贝和本地服务器上应用的状态。
TUXEDO提供的另一个管理进程DBBL(Distinguished Bulletin Board Liaison),用于多服务器配置时。
DBBL与BBL协同,保证所有部分的公告牌内容的一致性。
配置文件:任何TUXEDO应用系统的最基本的管理任务,是建立并维护配置文件。
该文件通常称为ubbconfig文件。
负责该工作的系统管理员必须很好的了解分布于各台机器上的应用服务的数据流,消息队列的构造,资源间的相互关系。
ubbconfig文件可视作包含应用启动信息的容器,需编译成二进制文件tuxconfig,作为启动时的参考。
其内信息包括:²系统范围信息(*RESOURCES节)²机器信息(*MACHINES节)²组信息(*GROUPS节)²服务信息(*SERVERS节)²交易信息(*SERVICES节)²网络组信息(*NETGROUPS节)²网络信息(*NETWORK节)²路由原则信息(*ROUTING节)当完成了ubbconfig文件后,用tmloadcf命令生成tuxconfig ;另一种从ubbconfig生成tuxconfig的方法是使用图形管理界面(GAI—Graphical Administration Interface)。
TUXEDO监控之MIB接口TUXEDO这个产品在公司社保这个行业通讯产品中得到了非常成功的运用,从公司第一个tuxedo通讯产品的诞生到现在成熟产品的广泛使用,公司产品经历了不断的淬炼和完善。
而我自己也从一个初学者慢慢成长为对该产品有了深入的了解,并积累了丰富的行业经验。
Tuxedo是一个相当庞大的产品,涉及的内容相当广泛。
在公司产品广泛使用的事情,我整理出了一点关于用MIB来监控tuxedo应用方面的资料,与大家共勉和探讨:很多人对tuxedo的开发方面有一定的了解,对于MIB可能是第一次听到,其实MIB就是一套TUXEDO提供了一套可编程的管理员API接口(Management Information Bases),我们通常简称为MIB。
我们知道,TUXEDO这个产品提供了丰富的API编程接口给第三方调用,基于这种接口,在TUXEDO产品基础上,我们可以开发第三方接口产品,来完善和辅助TUXEDO的基本应用,实现我们想要的功能,比如监控,管理,报告等等。
市场上很多第三方监控软件的开发都依赖于这些接口实现。
通过MIB接口我们可以编程实现对TUXEDO运行时的所有系统资源的监控,比较常用的资源监控如下:✧SERVER和SERVICE的运行状况✧SERVER队列和消息队列的资源情况✧客户端的使用情况✧域间通讯的连接情况✧系统的资源配置MIB接口将系统资源划分为三种类型:✧ClassesClasses指资源的分组,例如SERVER、SERVICE、CLIENT、QUEUE、MSG等,主要的Classes的类型有T_MACHINE、T_GROUP、T_SERVER 、T_SERVICE 、T_SVCGRP、T_QUEUE、T_MSG T_DOMAIN、T_CLIENT等。
✧AttributesAttributes指Classes对应的属性,例如SERVER的属性有SERVERNAME、SRVGRP、SRVID和运行时的参数值等属性。
TUXEDO应用服务配置、部署手册1. WINDOWS环境下TUXEDO服务端应用程序的部署和配置1.1 tuxedo的安装确定安装介质(Tuxedo安装程序)运行Setup图表 -1 Tuxedo安装向导图表-2 Tuxedo安装向导点击“Next”,继续图表 -3 许可证协议选择“YES”,继续图表 -4:选择安装类型选择“Full Installation”,继续图表 -5 制定安装路径路径设为“d:\bea”,继续图表 -6 产品路径6.路径设为“d:\bea\tuxedo”,继续图表 -7安装程序开始拷贝文件等待安装程序拷贝文件。
图表 -8输入Listen password输入Listen password,输入两个相同的密码,“lp”,继续图表 -9安装SSL选择“NO”,继续图表-10:安装LDAP取安装程序的默认值,继续图表 -11:安装License 选择“no”,继续图表 -12:Tuxedo安装完毕安装完毕注意事项LIC的安装假设TUXEDO安装在d:\bea\tuxedo,在udataobj子目录中考入lic.txt1.2 应用程序的配置关于环境变量的配置,setenv.bat文件格式如下:rem Copyright (c) 1995 Novell, Inc.rem All Rights Reservedrem THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OFrem Novell, Inc.rem The copyright notice above does not evidence anyrem actual or intended publication of such source code.rem Copyright (c) 1995 Novell, Inc.rem All rights reservedrem ident "@(#) apps/simpapp/setenv.cmd $Revision: 1.1 $"set TUXDIR=d:\bea\tuxedoset WSNADDR=//10.233.128.18:8888set APPDIR=d:\ydlwset PATH=%TUXDIR%\bin;%APPDIR%;%PATH%set LIB=%LIB%;d:\Oracle\Ora9\precomp\lib\msvc;set TUXCONFIG=%APPDIR%\tuxconfigset FIELDTBLS32=qqdata,fhdata,yhfymx,comfldset FLDTBLDIR32=%APPDIR%;%TUXDIR%\udataobjcall %APPDIR%\VCVARS32.BAT需要注意的地方用红色标记,其中TUXEDO为tuxedo的安装主目录,APPDIR为应用程序主目录,根据实际情况进行修改。
Tuxedo完全操作⼿册⼀、tuxedo的配置1、展开tuxedo包,例如:/home/tuxedo2、配置ubbconfig⽂件在江苏建⾏是jsccb.ubb*RESOURCES*RESOURCES节包含整个应⽤范围的信息。
本节必须在配置⽂件第⼀节,不可缺少。
参数意义*RESOURCES *RESOURCES节IPCKEY 共享内存idUID TUXEDO管理员⽤户idGID TUXEDO管理员⽤户idPERM TUXEDO管理员组⽤户的权限MAXACCESSERS 服务端和客户端的最⼤进程数MAXSERVERS 限制可以启动服务总数MAXSERVICES 限制可以发布交易总数MASTER 指出主控节点的逻辑名,第⼆个是备份节点MODEL 应⽤构架,MP表⽰多机OPTIONS LAN,MIGRA TE表⽰是⼀个⽹络应⽤,服务可以移植到替代处理器上SECURITY 安全级别(5个)AUTHSVC 客户端可以通过交易“AUTHSVC”获得认证NOTIFY DIPIN,客户端通过dip-in收到⼴播通知SYSTEM_ACCESS PROTECTED,NO_OVERRIDE,应⽤代码不得⼲扰共享内存LDBAL 设Y则进⾏负载平衡MAXBUF[S]TYPE 数据缓冲类型及⼦类的最⼤数SCANUNIT 内部时间间隔单位,单位是秒SANITYSCAN 检索公告牌的内部时间间隔,单位是SCANUNITBLOCKTIME 交易超时时间,单位是SCANUNITBBLQUERY DBBL查询所有BLL的时间间隔DBBLWAIT DBBL等待BBL回应的超时时间MAXCONV 同时最⼤会话数jsccb.ubb的实例###################### RESOURCES SECTION ######################*RESOURCESIPCKEY 234567DOMAINID JSCCBMASTER SERVER1MAXSERVERS 900MAXSERVICES 2000CMTRET LOGGEDMODEL MPLDBAL YSECURITY NONEMAXGTT 500OPTIONS LANBLOCKTIME 12*MACHINES*MACHINES节包含应⽤有关的每个处理器的信息。
TUXEDO中间件介绍及应用一、前言首先介绍一下什么是中间件?中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服务器的操作系统之上,管理计算资源和网络通信。
中间件屏蔽了底层操作系统的复杂性,使程序开发人员面对一个简单而统一的开发环境,减少程序设计的复杂性,将注意力集中在自己的业务上,不必再为程序在不同系统软件上的移植而重复工作,从而大大减少了技术上的负担。
世界著名的咨询机构Standish Group在一份研究报告中归纳了中间件的十大优越性:●缩短应用的开发周期●节约应用的开发成本●减少系统初期的建设成本●降低应用开发的失败率●保护已有的投资●简化应用集成●减少维护费用●提高应用的开发质量●保证技术进步的连续性●增强应用的生命力Tuxedo是第一个严格意义上的中间件产品。
Tuxedo是1984年在当时属于AT&T的贝尔实验室开发完成的,但Tuxedo在很长一段时期里只是实验室产品。
直到BEA公司1995年收购Tuxedo后,使Tuxedo现已经发展成为交易中间件领域事实上的标准。
TUXEDO是在企业、Internet 这样的分布式运算环境中,开发和管理三层结构的客户/服务器型关键任务应用系统的强有力工具。
它具备分布式事务处理和应用通信功能,并提供完善的各种服务来建立、运行和管理关键任务应用系统。
开发人员能够用它建立跨多个硬件平台、数据库和操作系统的可互操作的应用系统。
二、T UXEDO的组件软件模型TUXEDO采用三层结构的组件软件模型。
图1 BEA TUXEDO 的组件软件模型概要图1表示TUXEDO的组件软件模型的概要。
该结构分为三层:●客户为第一逻辑层,实现用户交互和数据表示,向第二层的服务器请求调用核心的业务逻辑处理服务,比如数据库的读取和更新。
●中间层为服务器组件,这些组件由BEA TUXEDO管理,实现核心的业务逻辑服务,并将这些服务按名字广播,接受并处理从客户或其他服务器发出的请求这些服务的消息,并将处理结果返回给请求者,即客户或其他服务器。
BEA Tuxedo 在银行业中的应用⑵■北京 经乾六.bankapp 实现的服务器和服务bankapp 实现了8个服务器共19个服务。
这8个服务器是:TLR 、XFER 、ACCT 、BAL 、BTADD 、AUDITC 、BALC 、ACCTMGR ,根据它们在bankapp 中作用的不同,可以分为三大类:数据库导入、银行事务处理和帐务审计。
下图展示了服务器、服务和客户机之间的调用关系(未列出帐务审计模块在会话模式下使用的两个服务器和它们实现的7个服务)。
在数据导入模块(Database Population )中,客户程序为ud ,它接收gendata 程序产生的模拟数据,把它们放到FML 类型缓冲区,然后提交给BTADD 和ACCT 服务器,完成向BRANCH 、TELLER 、ACCOUNT 表中添加初始数据。
在银行事务处理模块(Banking Transaction )中,客户程序也为ud ,它接收gentran 程序产生的输出数据,把它们放到FML 类型缓冲区,然后提交给ACCT 、TLR 和XFER 服务器,模拟了银行开户、帐号注销、存款、取款、转帐、查询等基本业务。
在帐务审计模块(Audits )中,常规“请求/响应”模式下的客户程序为audit ,服务器为BAL ;在会话模式,客户程序为auditcon ,服务器为AUDITC 、BALC 。
1.BTADD 服务器BTADD 服务器实现了两个服务:BR_ADD 和TLR_ADD ,它们都从ud 接收FML 类型缓冲区,然后插入到BRANCH 和TELLER 表中。
右图是BR_ADD 的部分代码,它从transb Ædata 缓冲区中取出branch_id 、address 、phone 、last_acct 、last_teller 字段的值,再执行嵌入式SQL 语句将它们插入BRANCH 表,bal 取值为0,因为所有支行始初化时,余额为0。
作者简介:李敬民(1978 ̄),男,广东新会人,硕士,五邑大学信息学院助教,研究方向为软件工程、数据库系统。
Tuxedo中间件在电信综合业务支撑系统中的应用李敬民(五邑大学信息学院,广东江门529000)摘要:以交易中间件为框架基础的三层体系结构已被广泛应用在分布式系统中。
介绍了Tuxedo中间件的组成与设计方法,结合实例描述了Tuxedo中间件在电信综合业务支撑系统中的应用。
关键词:Tuxedo;中间件;三层体系结构;综合业务支撑系统中图分类号:TP393.09文献标识码:A文章编号:1672-7800(2008)06-0045-030引言当前大型数据库应用系统大多采用三层体系结构,实现三层结构系统的关键技术就是中间件技术。
Tuxedo是美国BEA公司的一种事务处理(交易)中间件产品,在电信、金融、邮政、证券、政府、航空等部门的大规模事务处理领域中有广泛的应用。
它提供了一个开放的环境,支持各种各样的客户、数据库、网络、遗留系统和通讯方式,能够在C/S环境下整合各种异构平台,通过联机事务处理,保证交易的完整性和数据的一致性。
目前电信行业中的应用系统大多基于Tuxedo中间件开发,例如综合业务支撑系统、计费系统、帐务系统、客户服务系统等。
其中,综合业务支撑系统(IBSS-IntegratedBusinessSupportSystem)是电信运营商进行市场竞争的核心支撑系统,地位非常重要。
它既是分布式应用系统,也是联机处理系统。
IBSS需要大量并发进程,处理并发涉及到操作系统、编程语言、数据通讯、数据库系统、系统管理及应用软件,相当复杂,所以需要使用Tuxedo构建三层体系结构来简化它。
1Tuxedo中间件1.1Tuxedo概述Tuxedo中间件是在企业、Internet这样的分布式运算环境中开发和管理三层结构的客户/服务器型关键任务应用系统的强有力工具。
它具备分布式事务处理和应用通信功能,并提供完善的各种服务来建立、运行和管理关键任务应用系统。