tuxedo环境变量
假设tuxedo安装在目录$TUXEDO_DIR,如/tuxedo/tuxedo10.0,主机IP为192.168.108.104,需要设置以下环境变量:
TUXDIR=$TUXEDO_DIR
TUXCONFIG=$SELECT_DIR/tuxconfig
其中,tuxconfig为您指定目录$SELECT_DIR下的tuxdeo自动编译产生的文件,目录自选,但必须保留"tuxconfig"关键字。
tuxedo配置文件之ubbconfig
*RESOURCES
IPCKEY 96338
DOMAINID DOM_HOSTA_TUXEDO
MASTER HOSTA_TUXEDO
MAXACCESSERS 200
MAXSERVERS 120
MAXSERVICES 350
MODEL SHM
LDBAL N
BLOCKTIME 6400
SCANUNIT 5
*MACHINES
DEFAULT:
TUXDIR="/tuxedo/tuxedo10.0" #相关目录需要更改为您自己的
APPDIR="/tuxedo/service_app/bin"
TUXCONFIG="/tuxedo/info/tuxconfig"
ULOGPFX="/tuxedo/log"
MAXWSCLIENTS=100
vctest2 LMID=HOSTA_TUXEDO #vctest2主机名,unix可通过uname -n获得,LIMD表示主机逻辑ID
*GROUPS
CUSTOMGRP LMID=HOSTA_TUXEDO GRPNO=1 OPENINFO=NONE
LDMGRP LMID=HOSTA_TUXEDO GRPNO=2
LGWGRP LMID=HOSTA_TUXEDO GRPNO=3
*SERVERS
DEFAULT:
CLOPT="-A -- "
#DMADM(DOMAIN ADMINISTRATOR SERVER)
#一个tuxedo应用只能有一个DMADM,可以在任何一个组中
#一个tuxedo应用可以有多个GWADM,GWTDOMAIN对,一个组只能有一个GMADM,GWTDOMAIN对,
#管理域的server,在运行时管理BDMCONFIG,对已登记的gateway group提供支持,在tuxedo系统中,只能有一个DMADM进程,
#且不能对它采用MSSQ,不能有REPLYQ.
DMADM SRVGRP=LDMGRP SRVID=130
#GWADM(GATEWAY ADMINISTRATOR SERVER)
#管理域的域网关进程,在运行时可以对某一组域网关进行管理,主要从DMADM那里取得域的配置信息,并对域网管进程
#及跨越域的全局事务的LOG文件进行管理.
GWADM SRVGRP=LGWGRP SRVID=140
#GWTDOMIN(GATEWAY PROCESS)
#处理域之前的互操作,使本地域和调用远程域可以互相调用彼此的service,其中GMADM和GWTDOMAIN必须在一个组中,
#一个tuxedo应用可以有多个GWADM,GWTDOMAIN对,一个组只能有一个GMADM,GWTDOMAIN对,但一个tuxedo应用
#只能有一个DMADM,DMADM可以在任何一个组中,一个本地域可以和多个远程域实现互操作.
GWTDOMAIN SRVGRP=LGWGRP SRVID=150
#发布的自定义服务
simpserv SRVGRP=CUSTOMGRP SRVID=500 MIN=1 MAX=10 RESTART=Y MAXGEN=10 GRACE=10
CLOPT="-A -r --" RQADDR="simpserv" REPLYQ=Y
*SERVICES
TOUPPER
命令:加载ubboconfig
tmloadcf -y ubbconfig
关于配置WSL、JSL、JREPSVR
在采用jolt方式调TUXEDO服务时必须配置,配置样例如下:
*SERVERS
DEFAULT:
CLOPT="-A -- "
WSL SRVGRP=ABMGRP SRVID=100
CLOPT="-A -t -- -n //192.168.108.104:8271 -m 10 -M 200 -x 30"
JSL SRVGRP=JOLTGRP SRVID=110
CLOPT="-A -t -- -n //192.168.108.104:8272 -m 10 -M 200 -x 30"
JREPSVR SRVGRP=JREPGRP SRVID=120
GRACE=0
CLOPT="-A -- -W -P $TUXDIR/udataobj/jolt/repository/jrepository"
编译tuxedo自带例子simpcl.c,simpserv.c($TUXEDO_HOME/samples/atmi/simpapp)
buildclient -o simpcl -f simpcl.c
buildserver -o simpserv -f simpserv.c -s TOUPPER
将simpserv.o拷贝到ubbconfig中配置的APPDIR目录,这个就是我们发布的服务:
DEFAULT:
......
simpserv SRVGRP=CUSTOMGRP SRVID=500 MIN=1 MAX=10 RESTART=Y MAXGEN=10 GRACE=10
CLOPT="-A -r --" RQADDR="simpserv" REPLYQ=Y
*SERVICES
TOUPPER
参数说明:
*RESOURCES节点
IPCKEY 共享内存id
UID TUXEDO管理员用户id
GID TUXEDO管理员组id
PERM TUXEDO管理员组用户的权限
MAXACCESSERS 服务端和客户端的最大进程数
MAXSERVERS 限制可以启动服务总数
MAXSERVICES 限制可以发布交易总数
MASTER 指出主控节点的逻辑名,第二个是备份节点
MODEL 应用构架,SHM表示单机,MP表示多机
OPTIONS LAN,MIGRATE表示是一个网络应用,服务可以移植到替代处理器上
SECURITY 安全级别(5个)
AUTHSVC 客户端可以通过交易"AUTHSVC"获得认证
NOTIFY DIPIN,客户端通过dip-in收到广播通知
SYSTEM_ACCESS PROTECTED,NO_OVERRIDE,应用代码不得干扰共享内存
LDBAL 设Y则进行负载均衡
MAXBUF[S]TYPE 数据缓冲类型及子类的最大数
SCANUNIT 内部时间间隔单位,单位是秒
SANITYSCAN 检索公告牌的内部时间间隔,单位是SCANUNIT
BLOCKTIME 交易超时时间,单位是SCANUNIT
BBLQUERY DBBL查询所有BLL的时间间隔
DBBLWAIT DBBL等待BBL回应的超时时间
MAXCONV 同时最大会话数
*MACHINES MACHINES节点
vctest2 物理处理器名,可以通过"uname -n"或节点名得到
TUXDIR TUXEDO系统软件安装位置
APPDIR 应用服务位置全路径
TUXCONFIG TUXEDO配置文件全路径
ENVFILE 环境文件全路径
ULOGPFX 应用日志文件全路径
MAXACCESSERS 本机最多处理器数,可以超越*RESOURCES节定义
MAXCONV 本机最大会话数,可以超越*RESOURCES节定义
*GROUPS GROUP节点
BANKB1 组的唯一标识符,可以是字母数字
GRPNO 组的唯一数字标识符
LMID 组所在的机器
*SERVERS SERVER节点,列出所有服务程序
DEFAULT: 本处列出的参数为其下列出的服务的缺省值,但可以被单列条目替代相应值
RESTART 如果设成Y,则服务可以重启动
MAXGEN 在GRACE定义时间之内,服务可以重启动MAXGEN次
GRACE 周期,单位是秒
RCMD 每次服务重启动,本处定义的脚本或命令被执行
ENVFILE 列有环境变量的文件,在交易启动前设入环境
TLR 一个服务名,用buildserver建立,应在APPDIR或$TUXDIR/bin
SRVGRP 服务属于一个在*GROUPS节中定义的服务组;如果需要移植服务,也可以定义在多个组中。
SRVID 服务组中代表服务的唯一值
MIN 最少在启动时启动的服务数
MAX 运行时,最多可以起的实例数
CLOPT 跟随服务启动的其他参数
-A 服务内建交易全发布
-r 指定服务记录时间戳,用于以后计算交易处理时间
-e 定义标准错误重定向文件
-o 定义标准输出重定向文件
-- TUXEDO参数和服务特定参数的分隔符
… 传给tpsvrinit()的参数
SYSTEM_ACCESS 设定后,应用错误不干扰公告牌
RQADDR 当设定此项后,所有本服务的实例都使用相同的请求队列。这是在应用中设置MSSQ(Multiple Server Single Queue)的方便办法,可以改善处理流量。任何时候,所有MSSQ集中的实例发布相同的交易集。
XFER 另一个服务
REPLYQ 设成Y,则服务又作为一个MSSQ集配置,任何其中的交易调用其他交易,就建立一个单独的回应队列。
*SERVICES 交易节点
# 注释行符号
大写字母 交易名,由应用服务提供
BUFTYPE 任何向该交易的请求,数据应该是此处定义类型
GROUP 交易所在服务所在的组
LOAD 负载因子,表示处理请求的时间,用于计算负载平衡
PRIO 优先级