????????? Tuxedo常見應用配置關注事項
1. ubbconfig配置中機器名配置:windows環境中一定要大寫,unix中可用uname -n查看。
2. tmboot 起不來常與這幾個參數相關,并容易混淆,建議關注。
MAXACCESSERS,MAXSERVERS,MAXSERVICES:這三個參數控制該TUXEDO應用系統對IPC資源的使用情況。
MAXACCESSERS: 在本系統的一個節點(一臺服務器)上,同時可以有多少個進程可以訪問該TUXEDO系統的公告板,默認值為50,它包括本地客戶端進程,SERVER進程,但不包括管理進程如:BBL,DBBL等。
MAXSERVERS: 在本系統中,總共可以有多少個SERVER存在,包括進行管理的SERVER,如:BBL,TMS等。默認值為50。
MAXSERVICES: 在本系統中,總共可以有多少個SEVICE存在, 默認值為100。
MAXCONV: 在一臺服務器上最多可以有多少個會話同時存在。范圍:0-32768,默認為10
3. 不同版本的tuxedo互連問題:如果是WSL模式:低聯高版本在WSL中加入-t參數,如CLOPT=”-A -t ??n//機器名:端口號,高聯低版本應在環境變量中設置WSINTOPPRE71=yes;如果是域模式:低聯高版本應該在ubbconfig中的SERVERS配置GWADM的CLOPT中加入-t參數,例如GWADM?? SRVGRP=LGWGRP SRVID=3 REPLYQ=N CLOPT="-A -t -- "
4. 在dmconfig中如果配置了多個域,并且指定遠端域服務時應該指定域服務路由(即遠端服務的本地域是什么,遠端域是什么),否則報協議錯誤,例如*DM_REMOTE_SERVICES
SERV_1?? LDOM=TDOM1 RDOM=TDOM3 RNAME=SERV_1
SERV_2?? LDOM=TDOM1 RDOM=TDOM3 RNAME=SERV_2
5. 用戶用tmadmin進入了管理進程,如果沒有退出,另外用戶用tmadmin進入管理進程,就成為受限管理用戶,部分命令不能使用。
6. Tuxedo Domain-level Failover 的工作特點和配置方式:
特點
當本地domain與主的遠端domain連接失敗時,本地Domain將請求轉發到另一個備份的遠端domain上。支持自動failback。當主domain恢復正常時,本地domain可以將請求轉發回主domain。CONNECTION_POLICY必須配置成ON_STARTUP或者是INCOMING_ONLY 。Domain-level要求本地domain與主domain和備份domain之間都建立好socket連接。可以有多個遠端的備份domain
配置方法
在Domain 配置文件(dmconfig)中的DM_REMOTE_SERVICES處按以下方法配置Service,用逗號分割Service所在的遠端domain ID,如:RDOM=identifier_1, identifier_2, identifier_3
??? *DM_REMOTE_SERVICES
????? DEFAULT: RDOM=R1, R2, R3
????? TOUPPER
????? TOLOWER
??? R1是主domain,后面的是備份domain
7. Tuxedo7.1及其以后的版本才正式支持多線程環境。在6.5版本,在Windows上有個客戶端的多線程附加包,安裝后可以用多線程方式并發調用服務,而在unix環境下6。5版不支持。
8. 如何在Tuxedo7.1中使用Fprint打印中文,應該配置環境變量? FML_PRINT_NOHEX =yes
9. unix環境下可以通過配置環境變量TUXCONFIG和BDMCONFIG的不同目錄,可以在一個用戶中啟動兩套完全獨立的BBL和兩套應用,并在相應的環境變量下管理相應的應用。
10. 在Tuxedo中有許多關于時間方面的參數,
SCANUNIT :
BBL系統進程對Bulletin Board的管理和監控是基于時間片的輪詢方式,時間片的大小就是SCANUNIT的值,SCANUNIT是Tuxedo對系統進行管理的最基本時間單位,其他許多時間方面的參數均是SCANUNIT的倍數。每隔SCANUNIT,BBL對Bulletin Board進行一次檢查,看看有無超時的事務或服務請求。SCANUNIT必須是大于0的5的倍數,最大是60,缺省10,單位為秒。
BLOCKTIME:
服務請求的超時值,BBL發現有超時的Request時,會給相應的Client端發信息,Client端如果在調用時未加TPNOTIME標記,會報錯返回,tperrno值為13。由于BLOCKTIME是以SCANUNIT為單位的,所以時間的絕對值為(BLOCKTIME * SCANUNIT),BLOCKTIME缺省為(60/SCANUNIT)。
SANITYSCAN
健全性檢查掃描,健全性檢查主要檢查Server進程狀態和Bulletin Board數據結構, BBL檢查Server進程是否存活,如果已經不存在,會清理Bulletin Board中相應的數據項及IPC資源,并根據參數配置決定是否重新啟動,如果設了RESTART=Y,所占的Message Queue不會被清,Queue中的Request得到保留,仍會被處理。如果是MP模式,BBL還會給DBBL發狀態消息。SANITYSCAN缺省為(120/SCANUNIT)。
BBLQUERY
BBL檢查,在MP模式下,DBBL會每隔一段時間檢查是否所有的BBL都發了" I am ok "心跳信息給自己,如果沒有收到某個BBL的信息,它會發Request給那個BBL,如果等了DBBLWAIT后仍然沒有回復,DBBL會認為那臺機器有問題,將其partition。BBL QUERY缺省為(300/SCANUNIT),DBBLWAIT缺省為(20/SCANUNIT)。BBLQUERY必須大于等于SANITYSCAN,tmloadcf 時會強制檢查,如果設的值小于SANITYSCAN,tmloadcf會自動調整為SANITYSCAN。
其它和時間相關的參數還有:
WSL [-I init-timeout]
WorkStation Client和后臺建立連接的超時參數值,缺省60秒
WSL [-T Client-timeout]
WorkStation Client和WSH建立連接后,如果在指定的時間內沒有信息交互,WSH會自動釋放和這個Client端的連接,并將此Client在Bulletin Board中的數據項請空,RollBack它未完成的事務 。
WSL [-N network-timeout]
此值實際上是WorkStation Client在做receive時的超時值,如果發生超時,此操作會出錯,WorkStation Client會斷開和后臺的連接。
SERVICES中的SVCTIMEOUT
如果SERVICE執行時間超過SVCTIMEOUT,BBL會自動將此Server進程Kill掉。
SERVICES中的TRANTIME
如果此SERVICE設置了AUTOTRAN=Y,則此值為事務超時值,超時后Transaction
Manager會自動RollBack此transaction
http://e-docs.bea.com/tuxedo/tux91/index.htm
tuxedo在線文檔