资源描述:
《tuxedo速成培训教材》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Tuxedo速成培训@CopyRight2004-2007,ShanghaiBaosightSoftwareCo.,Ltd.ThedocumentiscreatedandmodifiedbyBaosight,AllrightsreservedbyBaosight.Tuxedo速成培训Tuxedo及C/S结构介绍Tuxedo应用的一个简单例子客户端开发服务端开发应用配置Tuxedo管理命令TUXEDO是什么BEATUXEDO是在企业、Internet这样的分布式运算环境中开发和管理三层结构的客户/服务器型关键任务应用系统的强有力工具。它具备分布式事务处理和应用通信功能,并提供完善
2、的各种服务来建立、运行和管理关键任务应用系统。开发人员能够用它建立跨多个硬件平台、数据库和操作系统的可互操作的应用系统。BEATUXEDO是企业、Internet分布式应用中的基础主干平台。它提供了一个开放的环境,支持各种各样的客户、数据库、网络、遗留系统和通讯方式。分布式系统的层次结构分布式系统的主要层次:用户界面:被分成表示管理和表示逻辑。代表有主机框架的仿真终端;UNIX系统的X终端等;还包括Web浏览器界面。商业逻辑:包含应用逻辑和应用规则。数据管理:分为数据访问逻辑(SQL)和数据库管理。基本的C/S模式客户端模块(可能包含逻辑处理)服务端模块(在数据库中包含逻辑处理
3、)基本的C/S模式C/S系统是一种分布式系统,其特点是:客户端提供用户界面、请求交易服务端按交易组织,将结果返回客户端交易是分散的、按需求的操作可管理多层C/S模式TUXEDO的C/S方案Tuxedo速成培训Tuxedo及C/S结构介绍Tuxedo应用的一个简单例子客户端开发服务端开发应用配置Tuxedo管理命令客户端:提交交易请求服务端:响应请求交易的服务配置文件:描述机器信息、服务信息等TUXEDO应用的三个基本部分一个例子(图示)#include"atmi.h"/*TUXEDOHeaderFile*/main(intargc,char*argv[]){char*buf;l
4、ongsendlen,rcvlen;intret;if(tpinit((TPINIT*)NULL)==-1){(void)fprintf(stderr,"Tpinitfailed");exit(1);}sendlen=strlen(argv[1]);if((buf=(char*)tpalloc("STRING",NULL,sendlen+1))==NULL){(void)fprintf(stderr,"Errorallocatingsendbuffer");tpterm();exit(1);}(void)strcpy(buf,argv[1]);ret=tpcall(”T
5、OUPPER",(char*)buf,0,(char**)&buf,&rcvlen,(long)0);if(ret==-1){(void)fprintf(stderr,"Can'tsendrequesttoserviceTOUPPER");(void)fprintf(stderr,"Tperrno=%d",tperrno);tpfree(buf);tpterm();exit(1);}(void)fprintf(stdout,"Returnedstringis:%s",buf);tpfree(buf);tpterm();}一个例子(客户端)一个例子(客户端)应用程序包
6、含TUXEDO系统的头文件”atmi.h”,以便引用TUXEDO的函数和变量定义。客户端调用tpinit()连接应用用tpalloc()分配一个STRING类型数据缓冲将数据拷贝进缓冲用tpcall()包含数据缓冲,向交易“TOUPPER”发一个同步请求调用tpterm()切断与应用的连接#include#include#include“atmi.h”voidTOUPPER(TPSVCINFO*rqst){inti;for(i=0;ilen-1;i++)rqst->data[i]=toupper(rqst->data[i]);t
7、preturn(TPSUCCESS,0,rqst->data,0L,0);}一个例子(服务端)一个例子(服务端)服务端:包含TUXEDO系统头文件”atmi.h”象所有的TUXEDO交易函数一样,TOUPPER不用直接返回任何值,所以返回类型为void从客户端收到的数据放在TPSVCINFO结构中,是唯一的入参交易处理…用tpreturn()将数据缓冲返回客户端一个例子(配置文件)有关应用的信息,如可用交易,交易位置,应用范围等,有必要集中管理于单一资源。事实上,这些信息被集中于文件UBBC