一个
Tuxedo
应用系统的所有资源都在一个文本文件中进行定义,该文件称为
UBBCONFIG
。在配置完成之后,
UBBCONFIG
被编译成一个二进制的文件
TUXCONFIG
。在
Tuxedo
系统启动时,从该文件中读取系统的配置信息。
UBBCONFIG
文件类似于
Windows
下的
*.ini
文件。它包括以下
8
大部分,我们称之为节。
Ø
*RESOURCES
节(必须):与整个系统有关的配置信息
Ø
*MACHINES
节(必须):一个
Tuxedo
应用系统可能跨越多台服务器,在该节中配置与每台服务器有关的信息
Ø
*GROUPS
节(必须):
Tuxedo
中的服务可被分为多个组,在该节配置与组有关的信息
Ø
*SERVERS
节(可选):与
Server
有关的信息
Ø
*SERVICES
节(可选):与
Services
有关的信息
Ø
*NETWORK
节(可选):与网络有关的信息
Ø
*ROUTING
节(可选):配置路由规则
Ø
*NETGROUPS
节(可选):与网络分组有关的信息
一个
Tuxedo
应用系统=服务端程序+客户端程序+配置文件
Server
:每一个服务端程序文件都被编译成一个相应的可执行文件,该文件在运行的时候称为
Server
,它实际上就是一个进程。
Services
:在每个服务端程序中,主要是一个个函数,在
Tuxedo
中称这些函数为
Services
,一般也称之为服务。
一个系统可以跨越多台服务器,一台服务器可以有多个
Group
,但一个
Group
只能在一台服务器上,一个
Group
可以有多个
Server
,一个
Server
可以有多个
Service
*RESOURCES
节
常见参数意义
参数
|
意义
|
I
PCKEY
|
共享内存
id
。
Tuxedo
用它标识公告板和其它
IPC
资源,范围
32769~262142
|
MASTER
|
指出主控节点的逻辑名
LMID
,也可以为该
MASTER
机指定一台备份机
|
UID
|
TUXEDO
管理员用户
id
,在
UNIX
下就是执行
tnloadcf
的用户
ID
,在
Windows
下没用,取
0
|
GID
|
TUXEDO
管理员用户所在的组
id
。在
Windows
下取
0
|
PERM
|
指定对此
IPC
资源的存取权限。默认为
0666
,即任何人都可以对该
IPC
资源进行存取
|
DOMAINID
|
该
TUXEDO
应用系统的唯一标识
|
MAXACCESSERS
|
设定在本系统一个节点(一台服务器)上,可以有多少进程访问该系统的公告板,默认为
50
|
MAXSERVERS
|
设定系统中最多有多少个
Server
存在,默认值
50
|
MAXSERVICES
|
设定系统中最多有多少个
Service
存在,默认值
100
|
MODEL
|
部署模式:
SHM
(单机或者多台服务器但公用一个全局共享内存)、
MP
(多台服务器但没使用一个全局共享内存)
|
OPTION
|
LAN
(表使用
MP
部署模式),
MIGRATE
(表服务可以移植到替代处理器上)
|
SCANUNIT
|
内部时间间隔单位,单位是秒,默认值
10
秒
|
SANITYSCAN
|
Tuxedo
的管理进程
BBL
定时对它所在的服务器上的
Tuxedo
系统进行检查,检查超时的事务、超时的客户端连接等。
SANITYSCAN
指每隔多少个
SCANUNIT
检查一次,默认值
12
,即为
12
×
SCANUNIT
(默认
10
秒)=
120
秒
|
BLOCKTIME
|
交易超时时间,单位是
SCANUNIT
,默认值
6
|
MAXCONV
|
同时最大会话数,范围:
0
~
32768
,默认值
10
|
NOTIFY
|
设置消息的通知方式。默认为
DIPIN
(当客户端调用
ATMI
函数时,顺便查看是否有消息,如果有就发送给
Client
)
|
范例:
*RESOURCES
IPCKEY 80952
UID 213
GID 1
PERM 0660
MAXACCESSERS 150
MAXSERVERS 75
MAXSERVICES 200
MASTER SITE1,SITE2
MODEL MP
OPTIONS LAN,MIGRATE
SCANUNIT 10
SANITYSCAN 12
BLOCKTIME 3
MAXCONV 10
NOTIFY DIPIN
*MACHINES
节
常见参数意义
参数
|
意义
|
LMID
|
物理处理器名,可以通过
”uname –n”
或节点名得到
|
TUXDIR
|
TUXEDO
系统软件安装位置
|
APPDIR
|
应用服务位置全路径
|
TUXCONFIG
|
TUXEDO
配置文件全路径
|
ENVFILE
|
环境文件全路径
|
TYPE
|
指定该服务器类型,当两台服务器类型不同时,在它们之间传送数据要进行编码
/
解码工作
|
ULOGPFX
|
指定应用日志文件所在的目录及前缀。
|
UID
、
GID
、
PERM
、
MAXACCESSERS
、
MAXCONV
在这里可以被重新配置,以这里为准
*GROUPS
节
一台机器至少要定义一个服务组。如果没有定义组,管理命令
tmadmin
可能依然能运行。
每个组只要定义组名,映射组名的组号和逻辑机器名。组为分布式交易系统和数据依赖路由等灵活性措施提供了支持。
常见参数意义
参数
|
意义
|
组名
|
组的唯一标识符,可以是字母数字
|
GRPNO
|
组的唯一数字标识符
|
LMID
|
逻辑机器名
|
范例
*GROUPS
BANKB1 GRPNO=200 LMID=SITE1
BANKB2 GRPNO=220 LMID=SITE1
SYSGRP GRPNO=110 LMID=SITE1
EVTGRP1 GRPNO=120 LMID=SITE1
*SERVERS
节
常见参数意义
参数
|
意义
|
SRVGRP
|
服务属于一个在
*GROUPS
节中定义的服务组名
|
SRVID
|
该
Server
所对应的
ID
。在组中应该唯一
|
MIN
|
最少启动的进程数
|
MAX
|
最多启动的进程数
|
RESTART
|
如果设成
Y
,则服务可以重启动
|
GRAC
,
MAXGEN
|
在
GRACE
定义时间之内,服务可以重启动
MAXGEN
次
|
RCMD
|
每次服务重启动要执行的一个可执行文件名
|
CLOPT
跟随服务启动的其他参数
-A
服务内建交易全发布
–r
指定服务记录时间戳,用于以后计算交易处理时间
-e
定义标准错误重定向文件
-o
定义标准输出重定向文件
-- TUXEDO
参数和服务特定参数的分隔符
…
传给
tpsvrinit()
的参数
在默认情况下,
Tuxedo
的每一个
Server
对应一个请求队列,也可以多个
Server
对应一个请求队列,即
MSSQ
方式,以提高响应的速度。方法是设置以下参数。
RQADDR
:当设定此项后,所有本服务的实例都使用相同的请求队列。这是在应用中设置
MSSQ
(
Multiple Server Single Queue
)的方便办法,可以改善处理流量。任何时候,所有
MSSQ
集中的实例发布相同的交易集。
XFER
:另一个服务
REPLYQ
:
设成
Y
,则服务又作为一个
MSSQ
集配置,任何其中的交易调用其他交易,就建立一个单独的回应队列。
范例
*SERVERS
DEFAULT: RESTART=Y MAXGEN=5 GRACE=3600
RCMD=”/sur/apps/atmapp/scripts/beeper”
CLOPT=”-A” ENVFILE=”/usr/apps/atmapp/envfile”
TLR SRVGRP=BANKB1 SRVID=10 MIN=1 MAX=2
CLOPT=”-A –r
-e /usr/apps/atmapp/logs/TLR1.err
-o /usr/apps/atmapp/logs/TLR1.out
--
-T 101 –e 300 –d dbfile”
SYSTEM_ACCESS=PROTECTED
RQADDR=”TLR_Q1”
XFER SRVGRP=BANKB1 SRVID=20 MIN=1 MAX=2
RQADDR=”XFER_Q1” REPLYQ=Y
CLOPT=”-A –r”
*SERVICES
节
常见参数意义
参数
|
意义
|
BUFTYPE
|
任何向该交易的请求,数据应该是此处定义类型
|
SRVGRP
|
交易所在服务所在的组
|
LOAD
|
负载因子,表示处理请求的时间,用于计算负载平衡,默认为
50
|
PRIO
|
优先级,默认为
50
|
范例
*SERVICES
DEPOSIT BUFTYPE=”FML”
SRVGRP=BANKB1
LOAD=25 PRIO=70
配置文件的编译(生成
TUXCONFIG
文件)
UBBCONFIG
文件是一个可以编辑成需要的应用配置的文本文件。但是,
/T
在实际应用上读取的是二进制
TUXCONFIG
文件用于操作。命令
tmloadcf
可以把
UBBCONFIG
文件转化成
TUXCONFIG
文件。
Tmloadcf -y UBBCONFIG
文件名
tmloadcf
命令接受以下
4
个参数:
-c
计算运行应用需要的
IPC
资源,该信息将提供给管理员,用于在各机器上配置资源。
-n
进行语法检查并不生成
TUXCONFIG
。
-b
控制
TUXCONFIG
占用的物理页数。
-y
无条件覆盖
TUXCONFIG
,对全部问题都选“
yes
”
反编译命令
tmunloadcf
将
TUXCONFIG
转换成
ASCII
格式用于检查。该工具读取环境变量
TUXCONFIG
指向的文件。输出包含所有的参数,包括
TUXEDO
设定的缺省值,是
UBBCONFIG
文件的一个超集。
Tmunloadcf >myubb