9512.net
甜梦文库
当前位置:首页 >> IT/计算机 >>

BEA Tuxedo的应用初探


BEA Tuxedo 的应用初探 ■中央财经大学研究生 经乾 Tuxedo 是 BEA 公司的交易中间件产品,1984 年由贝尔实验室开发成功,1992 年易主 Novell 公司,1996 年由 BEA 公司收购.经过十多年的不断更新和完善,Tuxedo 已经发展成 为交易中间件领域事实上的标准. Tuxedo 可以有效地整合企业异构 C/S 系统,实现大规模的关键业务处理和分布式事务 管理,从而为企业提供一个可靠的,高性能的,易维护的三层分布式计算机环境.下图展示 了一个基本 Tuxedo 系统 的组成和工作原理. ①. Client 向 System/T 发出查询请求,以找到 Server 消息队列的地址; ②. Client 根据找到的 入口地址将请求发送到 Server 的消息队列; ③.Server 处理请求, 并将结果返回给 Client 的 消息队列. System/T 是 Tuxedo 系统的核心,它实现了 Tuxedo 的所有功能和特征,如 C/S 数据流 管理,服务请求的负载均衡,全局事务管理以保证交易的完整性,同步/异步服务请求,两 阶段提交以确保消息的发送等.System/T 提供了一个类似公告栏的服务,它发布 C/S 计算 机环境中所有服务器,服务,客户机的信息,供其它分布式计算的参与者使用.本文通过一 个简单的例子,讲述了 Tuxedo 应用程序工作的基本原理和开发方法.在以后的文章中,将 逐渐引入 Tuxedo 在银行,电信,金融,税务等大规模的关键业务处理体领域中的应用实例. Simpapp 是 Tuxedo 系统自带的一个例子,它由服务器和客户程序两部分组成.服务器 simpserv 实现了一个 TOUPPER 服务,它从客户程序接收一个字符串,将它转换成大写后, 传回客户端.整个工作流程可以用下图表示:
加入 系统

收集 数据

将数据放 入缓冲区

调用 服务

结果 响应 客户机 退出 系统

从缓冲区 取出数据

响应 数据 服务器

客户机收集要转换成大写的字符串 连接到 System/T 将字符串放入调用缓冲区 调 用服务器上的 TOUPPER 服务 从服务器响应缓冲区中取出数据 退出 System/T. 1.Simpapp 的服务程序 . 下面是服务程序 simpserv.c 的源代码: #include <stdio.h> #include "atmi.h" /* Tuxedo ATMI 函数库的头文件 */ TOUPPER(TPSVCINFO *rqst){ int i; for(i=0;i<rqst->len-1;i++)

rqst->data[i]=toupper(rqst->data[i]); /* 将 rqst->data 缓冲区内容转换成大写 */ tpreturn(TPSUCCESS,0,rqst->data,0L,0); /* 将 rqst->data 作为响应缓冲区返回 */ } 你可能已经注意到了,该程序没有提供 main 方法.事实就是这样的,Tuxedo 不要求程 序员编写 main 方法,以便让他们把精力集中在业务逻辑的编写上,在 build 时,由 Tuxedo 系统会为它创建一个. TPSVCINFO 是 Tuxedo 记录服务调用信息的一个结构体,data 域是保存请求数据的缓 冲区,len 域记录了 data 域的长度. 2.Simpapp 的客户程序 . 客户程序 Simpcl.c 是服务调用的发起者,它从命令行接收参数,通过 tpinit()调用连接到 System/T,通过 tpalloc()调用分配一个 STRING 类型的缓冲区,通过 tpcall()调用请求 TOUPPER 服务,最后通过 tpterm()调用退出 System/T,下面是它的源代码: #include <stdio.h> #include "atmi.h" int main(int argc, char *argv[]){ char *buf; long len; if(argc != 2) { (void) fprintf(stderr, "Usage: simpcl string\n"); exit(1); } if (tpinit((TPINIT *) NULL) == -1) { (void) fprintf(stderr, "Tpinit failed\n"); exit(1); } len = strlen(argv[1]); if((buf = (char *) tpalloc("STRING", NULL, len+1)) == NULL) { (void) fprintf(stderr,"Error allocating send buffer\n"); tpterm(); exit(1); } (void) strcpy(buf, argv[1]); if(tpcall("TOUPPER", buf, 0, &buf, &len, 0)==-1){ (void) fprintf(stderr, "Can't send request to service TOUPPER\n"); tpfree(buf); tpterm(); exit(3); } (void) fprintf(stdout, "Returned string is: %s\n", rcvbuf); tpfree(buf); tpterm(); return(0); } 3.Simpapp 的配置文件 .

除了客户和服务程序以外,Tuxedo 还需要一个配置文件来对应用进行描述.配置文件 由多个段组成, 每个段定义由一个星号开始. 下面是 NT 平台下 simpapp 的配置文件 ubbsimple 的内容,其中带下划线的部分需要根据机器的资源配置作适当修改.
*RESOURCES IPCKEY MASTER MODEL *MACHINES JQ LMID=NODE1 TUXDIR="G:\Program Files\BEA Systems\Tuxedo" APPDIR="G:\simpapp" TUXCONFIG="G:\simpapp\tuxconfig" *GROUPS GROUP1 LMID=NODE1 GRPNO=1 *SERVERS simpserv SRVGRP=GROUP1 SRVID=1 CLOPT="-A" *SERVICES TOUPPER 123456 NODE1 SHM

TUXDIR 指的是 Tuxedo 的安装路径,APPDIR 指的是 simpapp 应用程序所在的目录, TUXCONFIG 指的是 simpapp 的二进制配置文件,一般为%APPDIR%\tuxconfig. 4.Simpapp 的编译和运行 . 由于 Buildclient 和 Buildserver 没有编译能力,要编译 Tuxedo 应用程序,还必须安装第 三方的 C 语言编译器,在 NT 平台下推荐使用 VC.步骤如下: ⑴.设置环境变量
SET PATH=%PATH%; G:\Program Files\BEA Systems\Tuxedo\Bin SET TUXDIR=G:\Program Files\BEA Systems\Tuxedo TUXCONFIG=G:\simpapp\tuxconfig

⑵.生成二进制配置文件 tmloadcf –y ubbsimple ⑶.编译客户程序 buildclient –o simpcl.exe –f simpcl.c ⑷.编译服务程序 buildserver –o simpserv.exe –f simpserv.c –s TOUPPER ⑸.启动服务程序 tmboot -y ⑹.运行客户程序 simpcl "hello, JQ" ⑺.关闭应用程序 tmshutdown -y 5.管理 Simpapp . 通过 tmadmin 命令可以方便地管理服务程序,下面是用 psc 子命令打印的服务信息:
Service Name ----------------TOUPPER Routine Name ---------------TOUPPER Prog Name ------------simpserv.+ Grp Name ------------GROUP1 ID Machine -- ----------1 simple # Done ------0 Status -------AVAIL


赞助商链接

更多相关文章:
Tuxedo 安全介绍
BEA(中国)系统有限公司上海代表处 第 3 页共 9页 Tuxedo 介绍 ? 应用口令(APP_PW):整个应用使用统一的口令。客户连接到应用时必须 应用口令(APP_PW) (APP_...
BEA公司and Tuxedo 的标准
BEA公司and Tuxedo 的标准 - 易存道 Tel : 010-68018877-232 13701355877 目录: 目录: 1. BEA 公司 2.三层结构的特点 3.中间件的标...
BEA Tuxedo的通信缓冲区
BEA Tuxedo的通信缓冲区_计算机软件及应用_IT/计算机_专业资料。BEA Tuxedo 的通信缓冲区 ■北京 经乾 在编写通信程序时, 一般使用缓冲区在两个通信实体之间传递...
BEA TUXEDO技术概要
BEA TUXEDO技术概要 - 随着中间件在大型应用系统中的日益普及,目前各类中间件充斥着市场,它们在银行、电信、金融等大规模关键事务领域中的整合各种异构平台、保证交易...
Tuxedo-应用开发
Tuxedo-应用开发 - Tuxedo 资料 非常好 免费分享出来! 要的快抢了... 第一章 开发 BEA Tuxedo 应用程序 § 1.1 开发前的思考 在开发 BEA Tuxedo 应用程序之...
Tuxedo安装与配置v1
Tuxedo安装与配置v1_计算机软件及应用_IT/计算机_专业资料。湖南 IP 网认证计费...//download.oracle.com/otn/bea/tuxedo/11g/111120/tuxedo111120_64_aix_53_...
TUXEDO+JOLT配置与编程简介
TUXEDO+JOLT配置与编程简介 - JOLT 的配置与编程简介 开发建立一个 JOLT 客户端访问 BEA Tuxedo 的应用服务的主要的步骤,可以描述以 下的过程(参见下图) 1、...
通过wtc使tuxedo与weblogic通信开发
通过wtc使tuxedo与weblogic通信开发_计算机软件及应用_IT/计算机_专业资料。标题:...(一)摘要 bea tuxedo 与 weblogic 作为业界优秀的交易与应用服务器中间件产品,...
CNS_DOC_13031001_Tuxedo 9 for AIX的安装
CNS_DOC_13031001_Tuxedo 9 for AIX的安装 - Tuxedo 9 for AIX 的安装 1、创建一个用户为 Tuxedo,用户组为 bea 2、创建/opt/be...
TUXEDO与WEBLOGIC通过WTC进行互连的配置
TUXEDO与WEBLOGIC通过WTC进行互连的配置 - TUXEDO 与 WEBLOGIC 通过 WTC 进行互连的配置 BEA 公司的 TUXEDO,WEBLOGIC 作为最优秀的中间件产...
更多相关标签:

All rights reserved Powered by 甜梦文库 9512.net

copyright ©right 2010-2021。
甜梦文库内容来自网络,如有侵犯请联系客服。zhit325@126.com|网站地图