tuxedo编程

上传人:正** 文档编号:51413373 上传时间:2018-08-14 格式:PPT 页数:70 大小:469KB
返回 下载 相关 举报
tuxedo编程_第1页
第1页 / 共70页
tuxedo编程_第2页
第2页 / 共70页
tuxedo编程_第3页
第3页 / 共70页
tuxedo编程_第4页
第4页 / 共70页
tuxedo编程_第5页
第5页 / 共70页
点击查看更多>>
资源描述

《tuxedo编程》由会员分享,可在线阅读,更多相关《tuxedo编程(70页珍藏版)》请在金锄头文库上搜索。

1、The E-Commerce Transactions Company TUXEDO 编程框架TUXEDO 的安装$cd /cdrom $sh install.sh $TUXEDO客户端的配置 环境变量 WSENV文件WSNADDR=/192.168.102.249:4000SET PATH=C:PROGRA1BEASYS1TUXEDOBIN; SET INCLUDE=C:PROGRA1BEASYS1TUXEDOINCLUDE SET TUXDIR=C:PROGRA1BEASYS1TUXEDO SET LIB=C:PROGRA1BEASYS1TUXEDOLIB SET APPDIR=C:TUX

2、APP SET WSENVFILE=C:WSENVTUXEDO 服务端的系统配置作成系统配置文件Ubbconfig 系统分析与Client/ Server 组件设计系统配置文件 UBBCONFIG*RESOURCES IPCKEY237456 MASTERotc MODELSHM*MACHINES ”AIX_SERVER“LMID=“otc“ TUXCONFIG=“/usr/tuxedo/apps/dbteste/tuxconfig“ TUXDIR=“/usr/tuxedo“ APPDIR=“/usr/tuxedo/apps/dbtest“ MAXWSCLIENTS=10 *GROUPS “G

3、ROUP1“ LMID=“otc“GRPNO=1*SERVERS simpserv SRVGRP=“GROUP1” SRVID=1 WSLSRVGRP=“GROUP1“ SRVID =300 CLOPT=“-A - -n /159.226.5.218:5898 -d/dev/tcp -m1 -M5 -x 10“ *SERVICES ADD_A ADD_BAdministration-Configuration File*RESOURCES *MACHINES *GROUPS *SERVERS *SERVICES *NETWORKS *ROUTING *NETGROUPSAdministrati

4、on-Configuration File*RESOURCES IPCKEY237456 32769-16,777,214 MASTERSITE1,SITE2 UID3002 /* BEA TUXEDO Administrator GID100 PERM0660 Access Control */ MAXACCESSERS75 /* on a node */ MAXSERVERS40 /* in the whole domain */ MAXSERVICES55/* in the system */ MODELMP OPTIONLAN,MIGRATE LDBALY/* TMNETLOAD en

5、vironment */ NOTIFYSIGNAL /* DIPIN,IGNORE, TPINIT flag override*/ USIGNALSIGUSR1 SCANUNIT10/* 5*x */ SANITYSCAN3 /* SCANUNIT*SANITYSCAN help printserver printservicesA sample of TUXEDO AP Client main() tpinit(0); buf=tpalloc(“FML”,);bufoutput data tpfree(buf); tpterm() Servervoid JZ(TPSVCINFO *trans

6、b) s_buf = (FBFR*)transb-data; s_bufinput data; EXEC SQL INSERT INTO emp VALUES (:name,:age);r_buf=tpalloc(“FML”,.);r_buf len-1; i+) rqst-datai = toupper(rqst-datai);tpreturn(TPSUCCESS, 0, rqst-data, 0L, 0); #include #include “atmi.h“/* TUXEDO Header File */ main(int argc, char *argv) char *buf ; lo

7、ng sendlen, rcvlen; int ret; if (tpinit(TPINIT *) NULL) = -1) (void) fprintf(stderr, “Tpinit failedn“); exit(1); sendlen = strlen(argv1); if(buf = (char *) tpalloc(“STRING“, NULL, sendlen+1) = NULL) (void) fprintf(stderr,“Error allocating send buffern“); tpterm(); exit(1); (void) strcpy(buf, argv1);

8、 ret = tpcall(”TOUPPER“, (char *) buf, 0, (char *) if(ret = -1) (void) fprintf(stderr, “Cant send request to service TOUPPERn“); (void) fprintf(stderr, “Tperrno = %dn“, tperrno); tpfree(buf); tpterm(); exit(1); (void) fprintf(stdout, “Returned string is: %sn“,buf); tpfree(buf); tpterm(); 基于TUXEDO 的程

9、序设计与 运行管理-编写客户进程编写客户程序simpcl.cbuildclient客户进程 simpcl buildclient -w -o simpcl -f simpcl.cTUXDIR=/home/tuxedo; export TUXDIR PATH=$tuxdir/bin;$PATH NLSPATH=$TUXDIR/locale/C; export NLSPATH LANG=C; export LANG WSNADDR=/servername:port; export WSNADDR#include #include #include /* TUXEDO Header File */

10、#include /* TUXEDO Header File */int tpsvrinit(int argc, char *argv) userlog(“Welcome to the simple server“); return(0); void tpsvrdone() userlog(” simple server exited “); return ; void ADD_A(TPSVCINFO *rqst) strcat(rqst-data ,”AAAAA”); tpreturn(TPSUCCESS, 0, rqst-data, 0L, 0); void ADD_B(TPSVCINFO

11、 *rqst) strcat(rqst-data ,”BBBBBB”); tpreturn(TPSUCCESS, 0, rqst-data, 0L, 0); 基于TUXEDO 的程序设计与 运行管理-编写服务进程编写服务程序simpserv.cbuildserver服务进程 simpserv buildserver -o simpserv -f simpserv.c -s ADD_A -s ADD_BTUXDIR=/home/tuxedo; export TUXDIR PATH=$tuxdir/path;$PATH NLSPATH=$TUXDIR/locale/C; LANG=C;#inclu

12、de #include #include /* TUXEDO Header File */ #include /* TUXEDO Header File */int tpsvrinit(int argc, char *argv) userlog(“Welcome to the simple server“); return(0); void tpsvrdone() userlog(” simple server exited “); return ; void ADD_FUNC(TPSVCINFO *rqst) if !strcmp(rqst-name ,”ADD_A”) strcat(rqs

13、t-data ,”AAAAA”); else if !strcmp(rqst-name ,”ADD_B”) strcat(rqst-data ,”BBBBB”); tpreturn(TPSUCCESS, 0, rqst-data, 0L, 0); 基于TUXEDO 的程序设计与 运行管理-编写服务进程编写服务程序simpserv.cbuildserver服务进程 simpserv buildserver -o simpserv -f simpserv.c -s ADD_A,ADD_B:ADD_FUNCTUXDIR=/home/tuxedo; export TUXDIR PATH=$tuxdir

14、/path;$PATH NLSPATH=$TUXDIR/locale/C; LANG=C;*RESOURCES IPCKEY237456 MASTERotc MODELSHM*MACHINES ”AIX_SERVER“LMID=“otc“ TUXCONFIG=“/usr/tuxedo/apps/dbteste/tuxconfig“ TUXDIR=“/usr/tuxedo“ APPDIR=“/usr/tuxedo/apps/dbtest“ MAXWSCLIENTS=10 *GROUPS “GROUP1“LMID=“otc“GRPNO=1*SERVERS simpserv SRVGRP=“GROU

15、P1” SRVID=1 WSLSRVGRP=“GROUP1“ SRVID =300 CLOPT=“-A - -n /159.226.5.218:5898 -d/dev/tcp -m1 -M5 -x 10“ *SERVICES ADD_A ADD_B系统配置文件 UBBCONFIG 通讯缓冲区类型概述VIEW - C Structure Oriented Fixed length Encode/DecodeSTRING - CharBytesStream Variable lengthEncode/DecodeCARRAY- BinaryByteStream Fixed lengthNo Encode/DecodeFML - Attribtutes/Value Oriented Variable length, Encode/Decode简单复杂效率高效率低死板灵活类型少类型多通讯缓冲区类型-CARRAY. if(sendbuf = tpalloc(“CARRAY“,NULL, sendlen) = NULL) (void) fprintf(stderr,“Error allocating send b

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号