Tuxedo學(xué)習(xí)筆記-UBBCONFIG
一個(gè) Tuxedo 應(yīng)用系統(tǒng)的所有資源都在一個(gè)文本文件中進(jìn)行定義,該文件稱為 UBBCONFIG 。在配置完成之后, UBBCONFIG 被編譯成一個(gè)二進(jìn)制的文件 TUXCONFIG 。在 Tuxedo 系統(tǒng)啟動(dòng)時(shí),從該文件中讀取系統(tǒng)的配置信息。 UBBCONFIG 文件類似于 Windows 下的 *.ini 文件。它包括以下 8 大部分,我們稱之為節(jié)。
???????? *RESOURCES 節(jié)(必須):與整個(gè)系統(tǒng)有關(guān)的配置信息
???????? *MACHINES 節(jié)(必須):一個(gè) Tuxedo 應(yīng)用系統(tǒng)可能跨越多臺(tái)服務(wù)器,在該節(jié)中配置與每臺(tái)服務(wù)器有關(guān)的信息
???????? *GROUPS 節(jié)(必須): Tuxedo 中的服務(wù)可被分為多個(gè)組,在該節(jié)配置與組有關(guān)的信息
???????? *SERVERS 節(jié)(可選):與 Server 有關(guān)的信息
???????? *SERVICES 節(jié)(可選):與 Services 有關(guān)的信息
???????? *NETWORK 節(jié)(可選):與網(wǎng)絡(luò)有關(guān)的信息
???????? *ROUTING 節(jié)(可選):配置路由規(guī)則
???????? *NETGROUPS 節(jié)(可選):與網(wǎng)絡(luò)分組有關(guān)的信息
一個(gè) Tuxedo 應(yīng)用系統(tǒng)=服務(wù)端程序+客戶端程序+配置文件
Server :每一個(gè)服務(wù)端程序文件都被編譯成一個(gè)相應(yīng)的可執(zhí)行文件,該文件在運(yùn)行的時(shí)候稱為 Server ,它實(shí)際上就是一個(gè)進(jìn)程。
Services :在每個(gè)服務(wù)端程序中,主要是一個(gè)個(gè)函數(shù),在 Tuxedo 中稱這些函數(shù)為 Services ,一般也稱之為服務(wù)。
一個(gè)系統(tǒng)可以跨越多臺(tái)服務(wù)器,一臺(tái)服務(wù)器可以有多個(gè) Group ,但一個(gè) Group 只能在一臺(tái)服務(wù)器上,一個(gè) Group 可以有多個(gè) Server ,一個(gè) Server 可以有多個(gè) Service
*RESOURCES 節(jié) ???
常見參數(shù)意義
參數(shù) ????? |
意義 |
I PCKEY |
共享內(nèi)存 id 。 Tuxedo 用它標(biāo)識(shí)公告板和其它 IPC 資源,范圍 32769~262142 |
MASTER |
指出主控節(jié)點(diǎn)的邏輯名 LMID ,也可以為該 MASTER 機(jī)指定一臺(tái)備份機(jī) |
UID |
TUXEDO 管理員用戶 id ,在 UNIX 下就是執(zhí)行 tnloadcf 的用戶 ID ,在 Windows 下沒用,取 0 |
GID |
TUXEDO 管理員用戶所在的組 id 。在 Windows 下取 0 |
|
指定對(duì)此 IPC 資源的存取權(quán)限。默認(rèn)為 0666 ,即任何人都可以對(duì)該 IPC 資源進(jìn)行存取 |
DOMAINID |
該 TUXEDO 應(yīng)用系統(tǒng)的唯一標(biāo)識(shí) |
MAXACCESSERS |
設(shè)定在本系統(tǒng)一個(gè)節(jié)點(diǎn)(一臺(tái)服務(wù)器)上,可以有多少進(jìn)程訪問該系統(tǒng)的公告板,默認(rèn)為 50 |
MAXSERVERS |
設(shè)定系統(tǒng)中最多有多少個(gè) Server 存在,默認(rèn)值 50 |
MAXSERVICES |
設(shè)定系統(tǒng)中最多有多少個(gè) Service 存在,默認(rèn)值 100 |
MODEL |
部署模式: SHM (單機(jī)或者多臺(tái)服務(wù)器但公用一個(gè)全局共享內(nèi)存)、 MP (多臺(tái)服務(wù)器但沒使用一個(gè)全局共享內(nèi)存) |
OPTION |
LAN (表使用 MP 部署模式), MIGRATE (表服務(wù)可以移植到替代處理器上) |
SCANUNIT |
內(nèi)部時(shí)間間隔單位,單位是秒,默認(rèn)值 10 秒 |
SANITYSCAN |
Tuxedo 的管理進(jìn)程 BBL 定時(shí)對(duì)它所在的服務(wù)器上的 Tuxedo 系統(tǒng)進(jìn)行檢查,檢查超時(shí)的事務(wù)、超時(shí)的客戶端連接等。 SANITYSCAN 指每隔多少個(gè) SCANUNIT 檢查一次,默認(rèn)值 12 ,即為 12 × SCANUNIT (默認(rèn) 10 秒)= 120 秒 |
BLOCKTIME |
交易超時(shí)時(shí)間,單位是 SCANUNIT ,默認(rèn)值 6 |
MAXCONV |
同時(shí)最大會(huì)話數(shù),范圍: 0 ~ 32768 ,默認(rèn)值 10 |
NOTIFY |
設(shè)置消息的通知方式。默認(rèn)為 DIPIN (當(dāng)客戶端調(diào)用 ATMI 函數(shù)時(shí),順便查看是否有消息,如果有就發(fā)送給 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 節(jié)
常見參數(shù)意義
參數(shù) ????? |
意義 |
LMID |
物理處理器名,可以通過 ”uname –n” 或節(jié)點(diǎn)名得到 |
TUXDIR |
TUXEDO 系統(tǒng)軟件安裝位置 |
APPDIR |
應(yīng)用服務(wù)位置全路徑 |
TUXCONFIG |
TUXEDO 配置文件全路徑 |
ENVFILE |
環(huán)境文件全路徑 |
TYPE |
指定該服務(wù)器類型,當(dāng)兩臺(tái)服務(wù)器類型不同時(shí),在它們之間傳送數(shù)據(jù)要進(jìn)行編碼 / 解碼工作 |
ULOGPFX |
指定應(yīng)用日志文件所在的目錄及前綴。 |
UID 、 GID 、 PERM 、 MAXACCESSERS 、 MAXCONV 在這里可以被重新配置,以這里為準(zhǔn)
*GROUPS 節(jié)
一臺(tái)機(jī)器至少要定義一個(gè)服務(wù)組。如果沒有定義組,管理命令 tmadmin 可能依然能運(yùn)行。
?????? 每個(gè)組只要定義組名,映射組名的組號(hào)和邏輯機(jī)器名。組為分布式交易系統(tǒng)和數(shù)據(jù)依賴路由等靈活性措施提供了支持。
常見參數(shù)意義
參數(shù) ????? |
意義 |
組名 |
組的唯一標(biāo)識(shí)符,可以是字母數(shù)字 |
GRPNO |
組的唯一數(shù)字標(biāo)識(shí)符 |
LMID |
邏輯機(jī)器名 |
范例
*GROUPS
BANKB1???? GRPNO=200???? LMID=SITE1
BANKB2???? GRPNO=220???? LMID=SITE1
SYSGRP???? GRPNO=110???? LMID=SITE1
EVTGRP1?? GRPNO=120???? LMID=SITE1
*SERVERS 節(jié)
常見參數(shù)意義
參數(shù) ????? |
意義 |
SRVGRP |
服務(wù)屬于一個(gè)在 *GROUPS 節(jié)中定義的服務(wù)組名 |
SRVID? |
該 Server 所對(duì)應(yīng)的 ID 。在組中應(yīng)該唯一 |
MIN |
最少啟動(dòng)的進(jìn)程數(shù) |
MAX |
最多啟動(dòng)的進(jìn)程數(shù) |
RESTART |
如果設(shè)成 Y ,則服務(wù)可以重啟動(dòng) |
GRAC , MAXGEN |
在 GRACE 定義時(shí)間之內(nèi),服務(wù)可以重啟動(dòng) MAXGEN 次 |
RCMD |
每次服務(wù)重啟動(dòng)要執(zhí)行的一個(gè)可執(zhí)行文件名 |
CLOPT??????? 跟隨服務(wù)啟動(dòng)的其他參數(shù)
-A ??????? 服務(wù)內(nèi)建交易全發(fā)布
–r?????????? 指定服務(wù)記錄時(shí)間戳,用于以后計(jì)算交易處理時(shí)間
????????????? -e ???????? 定義標(biāo)準(zhǔn)錯(cuò)誤重定向文件
????????????? -o ???????? 定義標(biāo)準(zhǔn)輸出重定向文件
????????????? --??????????? TUXEDO 參數(shù)和服務(wù)特定參數(shù)的分隔符
????????????? …????????? 傳給 tpsvrinit() 的參數(shù)
在默認(rèn)情況下, Tuxedo 的每一個(gè) Server 對(duì)應(yīng)一個(gè)請(qǐng)求隊(duì)列,也可以多個(gè) Server 對(duì)應(yīng)一個(gè)請(qǐng)求隊(duì)列,即 MSSQ 方式,以提高響應(yīng)的速度。方法是設(shè)置以下參數(shù)。
RQADDR :當(dāng)設(shè)定此項(xiàng)后,所有本服務(wù)的實(shí)例都使用相同的請(qǐng)求隊(duì)列。這是在應(yīng)用中設(shè)置 MSSQ ( Multiple Server Single Queue )的方便辦法,可以改善處理流量。任何時(shí)候,所有 MSSQ 集中的實(shí)例發(fā)布相同的交易集。
XFER :另一個(gè)服務(wù) ??????
REPLYQ : ? 設(shè)成 Y ,則服務(wù)又作為一個(gè) MSSQ 集配置,任何其中的交易調(diào)用其他交易,就建立一個(gè)單獨(dú)的回應(yīng)隊(duì)列。
范例
*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_Q
XFER?? SRVGRP=BANKB1?????? SRVID=20? MIN=1?? MAX=2
????????????? RQADDR=”XFER_Q
????????????? CLOPT=”-A –r”
*SERVICES 節(jié)
常見參數(shù)意義
參數(shù) ????? |
意義 |
BUFTYPE |
任何向該交易的請(qǐng)求,數(shù)據(jù)應(yīng)該是此處定義類型 |
SRVGRP |
交易所在服務(wù)所在的組 |
LOAD |
負(fù)載因子,表示處理請(qǐng)求的時(shí)間,用于計(jì)算負(fù)載平衡,默認(rèn)為 50 |
PRIO |
優(yōu)先級(jí),默認(rèn)為 50 |
范例
*SERVICES
DEPOSIT??? BUFTYPE=”FML”
???????????????????? SRVGRP=BANKB1
???????????????????? LOAD=25?? PRIO=70
配置文件的編譯(生成 TUXCONFIG 文件)
UBBCONFIG 文件是一個(gè)可以編輯成需要的應(yīng)用配置的文本文件。但是, /T 在實(shí)際應(yīng)用上讀取的是二進(jìn)制 TUXCONFIG 文件用于操作。命令 tmloadcf 可以把 UBBCONFIG 文件轉(zhuǎn)化成 TUXCONFIG 文件。
Tmloadcf ?-y UBBCONFIG 文件名
tmloadcf 命令接受以下 4 個(gè)參數(shù):
-c??? 計(jì)算運(yùn)行應(yīng)用需要的 IPC 資源,該信息將提供給管理員,用于在各機(jī)器上配置資源。
-n??? 進(jìn)行語法檢查并不生成 TUXCONFIG 。
-b??? 控制 TUXCONFIG 占用的物理頁數(shù)。
-y??? 無條件覆蓋 TUXCONFIG ,對(duì)全部問題都選“ yes ”
反編譯命令 tmunloadcf 將 TUXCONFIG 轉(zhuǎn)換成 ASCII 格式用于檢查。該工具讀取環(huán)境變量 TUXCONFIG 指向的文件。輸出包含所有的參數(shù),包括 TUXEDO 設(shè)定的缺省值,是 UBBCONFIG 文件的一個(gè)超集。
Tmunloadcf? >myubbposted on 2006-09-04 23:26 Vincent.Chen 閱讀(2245) 評(píng)論(0) 編輯 收藏 所屬分類: BEA