Tuxedo概述、基本概念和功能介紹_第1頁
Tuxedo概述、基本概念和功能介紹_第2頁
Tuxedo概述、基本概念和功能介紹_第3頁
Tuxedo概述、基本概念和功能介紹_第4頁
Tuxedo概述、基本概念和功能介紹_第5頁
已閱讀5頁,還剩78頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、Tuxedo概述、基本概念和功能介紹目錄中間件概述Tuxedo概述Tuxedo基本概念BEA Tuxedo的功能BEA Tuxedo的環(huán)境變量BEA TuxedoBEA Tuxedo常用命令使用方法BEA Tuxedo的開發(fā)BEA Tuxedo配置信息UBBCONFIGBEA Tuxedo與XA規(guī)范BEA Tuxedo超時(shí)處理BEA Tuxedo負(fù)載均衡BEA Tuxedo 與 Weblogic之間的調(diào)用IBM MQSeries簡(jiǎn)單介紹中間件概述二層結(jié)構(gòu)與三層結(jié)構(gòu)中間件概述中間件的定義 中間件是一種獨(dú)立的系統(tǒng)軟件或服務(wù)程序,分布式應(yīng)用軟件借助這種軟件在不同的技術(shù)之間共享資源,中間件位于客戶機(jī)服

2、務(wù)器的操作系統(tǒng)之上,管理計(jì)算資源和網(wǎng)絡(luò)通訊。實(shí)現(xiàn)應(yīng)用之間的互連和互操作不同的應(yīng)用對(duì)中間件有不同的要求中間件是在中間處于應(yīng)用軟件和系統(tǒng)軟件之間的一類軟件,而非一種軟件或獨(dú)立于硬件或數(shù)據(jù)庫廠商(處于其產(chǎn)品的中間,實(shí)現(xiàn)其互連)的一類軟件或者是客戶方與服務(wù)方之間的連接件或者是需要進(jìn)行二次開發(fā)的中間產(chǎn)品中間件=平臺(tái)通信人們?cè)谑褂弥虚g件時(shí),往往是一組中間件集成在一起,構(gòu)成一個(gè)平臺(tái)(包括開發(fā)平臺(tái)和運(yùn)行平臺(tái)),但在這組中間件中必需要有一個(gè)通信中間件這個(gè)定義也限定了只有用于分布式系統(tǒng)中才能稱為中間件,同時(shí)還可以把它與支撐軟件和實(shí)用軟件區(qū)分開來中間件和平臺(tái)可能會(huì)互相轉(zhuǎn)化和互相滲透中間件概述中間件的作用1、中間件屏

3、蔽了底層操作系統(tǒng)的復(fù)雜性。2、減少了系統(tǒng)的維護(hù)、運(yùn)行和管理的工作量。3、可以無縫地集成不同時(shí)期、不同操作系統(tǒng)上開發(fā)的應(yīng)用軟件中間件概述中間件的分類1、消息中間件 將數(shù)據(jù)從一個(gè)應(yīng)用程序發(fā)送到另一個(gè)應(yīng)用程序,這就是消息中間件的主要功能。它要負(fù)責(zé)建立網(wǎng)絡(luò)通信的通道,進(jìn)行數(shù)據(jù)的可靠傳送,保證數(shù)據(jù)不重發(fā),不丟失。消息中間件的一個(gè)重要作用是可以實(shí)現(xiàn)跨平臺(tái)的操作,為不同操作系統(tǒng)上的應(yīng)用軟件集成提供數(shù)據(jù)傳送服務(wù)。主要代表是IBM MQSeries等2、交易中間件 交易中間件也和消息中間件一樣具有跨平臺(tái)、跨網(wǎng)絡(luò)的能力,但它的主要功能是管理分布于不同計(jì)算機(jī)上的數(shù)據(jù)的一致性,協(xié)調(diào)數(shù)據(jù)庫處理分布式事務(wù),保障整個(gè)系統(tǒng)的

4、性能和可靠性。交易中間件適用于聯(lián)機(jī)交易處理系統(tǒng)。主要代表是BEA Tuxedo等。3、對(duì)象中間件 對(duì)象中間件也具有交易中間件的功能,它是按面向?qū)ο蟮哪J絹斫M織體系結(jié)構(gòu),通過對(duì)象請(qǐng)求代理來實(shí)現(xiàn)交易處理。對(duì)象請(qǐng)求代理體系結(jié)構(gòu)主要有3種:CORBA、EJB和COM+。4、應(yīng)用服務(wù)器 基于WEB應(yīng)用,是企業(yè)實(shí)施電子商務(wù)的基礎(chǔ)平臺(tái)。它一般是J2EE體系結(jié)構(gòu)的。5、企業(yè)應(yīng)用集成 EAI可用于大型企業(yè)內(nèi)部眾多的應(yīng)用系統(tǒng)進(jìn)行有效的整合,是他們之間能夠互相訪問,實(shí)現(xiàn)互操作。6、安全中間件Tuxedo概述 BEA Tuxedo支持70多個(gè)不同的硬件/操作系統(tǒng)平臺(tái),其中包括幾乎所有的UNIX,Windows NT,

5、 OS/400, VMS, OS/2, Windows95 等等。 BEA Tuxedo支持幾乎所有的關(guān)系數(shù)據(jù)庫,并能通過XA協(xié)議和 Oracle、Informix、Sybase等流行數(shù)據(jù)庫接口以保證交易的一致性。支持所有流行的開發(fā)工具。 交易中間件的標(biāo)準(zhǔn)是由X/OPEN組織和ISO組織來制訂的。BEA TUXEDO遵循 所有關(guān)鍵的應(yīng)用接口標(biāo)準(zhǔn)和事務(wù)處理協(xié)議,如分布式 事務(wù)處理模型DTP,事務(wù)定界標(biāo)準(zhǔn)TX,應(yīng)用程序事務(wù)處理接口標(biāo)準(zhǔn)XATMI,以及和資源管理器 (數(shù)據(jù)庫)的接口標(biāo)準(zhǔn)XA,國際化標(biāo)準(zhǔn) XPG,中間件的互操作協(xié)議OSI-TP, 網(wǎng)絡(luò)協(xié)議支持TCP/IP、簡(jiǎn)單 網(wǎng)絡(luò)管理協(xié)議SNMP等。

6、 事實(shí)上,BEA TUXEDO不僅遵循標(biāo)準(zhǔn),而且目前的標(biāo)準(zhǔn),如XA, XATMI等大部分是基于BEA TUXEDO技術(shù)來制訂的。在BEA TUXEDO的30多個(gè)支持應(yīng)用 開發(fā)的函數(shù)調(diào)用中已有30個(gè)被Open Group組織接納為X/open的標(biāo)準(zhǔn)API,同時(shí),BEA是COBRA組織的核心會(huì)員,直接影響著面向?qū)ο蠹夹g(shù)的標(biāo)準(zhǔn)和發(fā)展方向。 作為全球?qū)I(yè)從事中間件技術(shù)的唯一的大型計(jì)算機(jī)廠商,BEA TUXEDO對(duì)所有開放系統(tǒng)(包括硬件、操作系統(tǒng)和數(shù)據(jù)庫等)提供平等的支持,不對(duì)某一種系統(tǒng)存在特別的“偏愛”,在所有系統(tǒng)平臺(tái)上有著功能和性能上的一致表現(xiàn),這也是其他中間件廠商很難真正做到的。另外,從遵循標(biāo)準(zhǔn)到

7、制定標(biāo)準(zhǔn),這也說明了BEA TUXEDO在開放系統(tǒng)平臺(tái)上事實(shí)上的領(lǐng)導(dǎo)地位。Tuxedo基本概念Tuxedo應(yīng)用系統(tǒng) 一個(gè)Tuxedo應(yīng)用系統(tǒng)是由在一個(gè)TUXCONFIG文件中定義的資源及其客戶端的總稱,一個(gè)Tuxedo應(yīng)用系統(tǒng)能夠通過域網(wǎng)關(guān)與別的Tuxedo應(yīng)用系統(tǒng)或其他的應(yīng)用中間件系統(tǒng)實(shí)現(xiàn)互操作域(DOMAIN) 域是具有相同功能或結(jié)構(gòu)的應(yīng)用系統(tǒng)的集合。應(yīng)用系統(tǒng)可以有多臺(tái)服務(wù)器組成。Tuxedo的域特性把客戶/服務(wù)器模型擴(kuò)展到多個(gè)獨(dú)立自治的應(yīng)用系統(tǒng)。一個(gè)域既可以是一組Tuxedo的應(yīng)用程序,也可以是一組運(yùn)行在另一個(gè)非Tuxedo環(huán)境中的應(yīng)用程序。 Tuxedo的每個(gè)域獨(dú)立完成域內(nèi)的操作,域間

8、操作由域網(wǎng)關(guān)完成。BEA Tuxedo的功能 Tuxedo具備了所有交易中間件產(chǎn)品所應(yīng)具備的功能,作為構(gòu)造三層結(jié)構(gòu)應(yīng)用系統(tǒng)的基礎(chǔ)平臺(tái),Tuxedo的主要功能可概括為五大平臺(tái):1、應(yīng)用開發(fā)平臺(tái): 提供API,供開發(fā)人員調(diào)用,用于開發(fā)整個(gè)應(yīng)用系統(tǒng);支持多種客戶端開發(fā)工具和操作系統(tǒng)。2、應(yīng)用部署平臺(tái): 通過配置文件,對(duì)應(yīng)用系統(tǒng)進(jìn)行部署,實(shí)現(xiàn)開發(fā)與部署分開;3、應(yīng)用運(yùn)行平臺(tái): 提供應(yīng)用系統(tǒng)運(yùn)行的環(huán)境;在運(yùn)行時(shí)可根據(jù)系統(tǒng)的配置提供故障恢復(fù)、負(fù)載均衡、自動(dòng)伸縮、安全認(rèn)證和數(shù)據(jù)加密等功能,為Tuxedo應(yīng)用系統(tǒng)提供一個(gè)可靠的運(yùn)行環(huán)境。4、應(yīng)用管理平臺(tái): 對(duì)整個(gè)應(yīng)用系統(tǒng)進(jìn)行管理和監(jiān)控。5、應(yīng)用互聯(lián)平臺(tái): Tu

9、xedo是一個(gè)高度開放的系統(tǒng),能夠很容易和其他應(yīng)用系統(tǒng)互聯(lián),實(shí)現(xiàn)互操作。BEA Tuxedo的環(huán)境變量1、TUXDIR 定義了TUXEDO的安裝目錄,如: TUXDIR=/home/tuxedo/tuxedo812、TUXCONFIG 定義了TUXEDO配置文件的路徑,如: 3、BDMCONFIG Tuxedo跨域訪問配置文件的路徑,編譯之后生成的二進(jìn)制配置文件bdmconfig,如: 4、WSNADDR 定義了服務(wù)器提供監(jiān)聽tuxedo應(yīng)用請(qǐng)求的地址,一般是 server ip:port,如: WSNADDR=/128.64.96.14:13134 該變量定義的IP和端口應(yīng)該與配置文件中WS

10、L進(jìn)程定義的一致,TUXEDO服務(wù)才能接收到客戶端的請(qǐng)求5、NLSPATH:消息目錄的全路徑6、LANG7、LD_LIBRARY_PATH(SLIB_PATH)BEA Tuxedo管理進(jìn)程_11、BBL(Bulletin Board Liaison),主要對(duì)公告板等進(jìn)行管理,包含了一個(gè)公告牌的本地拷貝和本地服務(wù)器上應(yīng)用的狀態(tài)。 Bulletin Board(BB,公告板):Tuxedo把系統(tǒng)的配置信息保存在一個(gè)共享內(nèi)存中,該共享內(nèi)存稱為公告板。2、DBBL(Distinguished Bulletin Board Liaison),TUXEDO用于多服務(wù)器配置各個(gè)服務(wù)器之間的協(xié)調(diào)工作,只有當(dāng)T

11、UXEDO配置為MP方式時(shí)才需要用到DBBL。DBBL與BBL協(xié)同,保證所有的公告牌內(nèi)容的一致性。3、WSL:WorkStation Listener,Tuxedo系統(tǒng)自帶的一個(gè)Server,它偵聽一個(gè)指定的端口,WSC最初與該Server建立連接。4、WSH:WorkStation Handler Server ,Tuxedo系統(tǒng)自帶的一個(gè)Server,由它處理WSC與Tuxedo Server之間的通信。5、BRIDGE,不同的服務(wù)器之間通過BRIDGE進(jìn)程進(jìn)行通訊,該BRIDGE的偵聽IP地址及端口 在NADDR中指定。如果是在UNIX下要指定該BRIDGE所用的網(wǎng)絡(luò)設(shè)備,如果是在NT下

12、則不要。BEA Tuxedo管理進(jìn)程_26、DMADM,域間通信的進(jìn)程:管理域的server,在運(yùn)行時(shí)管理BDMCONFIG,對(duì)已登記的gateway group提供支持,在tuxedo系統(tǒng)中,只能有一個(gè)DMADM進(jìn)程,且不能對(duì)它采用MSSQ,不能有REPLYQ7、GWADM,管理DOMAIN的域網(wǎng)關(guān)進(jìn)程(在/DOMAIN中是GWTDOMAIN)的SERVER,在運(yùn)行時(shí)可以對(duì)某一組域網(wǎng)關(guān)(Domain Gateway Group)進(jìn)行管理。主要從DMADM那里取得域的配置信息,并對(duì)域網(wǎng)管進(jìn)程及跨越域的全局事務(wù)的LOG文件進(jìn)行管理8、GWTDOMAIN,處理DOMAIN之間的互操作,使本地域和調(diào)

13、用遠(yuǎn)程域可以互相調(diào)用彼此的service,其中GMADM和GWTDOMAIN必須在一個(gè)組中,一個(gè)tuxedo應(yīng)用 可以有多個(gè)GWADM,GWTDOMAIN對(duì),一個(gè)組只能有一個(gè)GMADM,GWTDOMAIN對(duì),但一個(gè)tuxedo應(yīng)用只能有一個(gè)DMADM, DMADM可以在如何一個(gè)組中,一個(gè)本地域可以和多個(gè)遠(yuǎn)程域?qū)崿F(xiàn)互操作。9、tlisten,是TUXEDO自帶的管理程序,在MP模式下,完成主機(jī)之間的初始化通訊,如非MASTER機(jī)從MASTER機(jī)中下載tuxconfig配置文件。tlisten的啟動(dòng)辦法:tlisten l /NLSADDRBEA Tuxedo常用命令使用方法tmloadcf編譯T

14、UXEDO UBB信息tmunloadcf將TUXCONFIG轉(zhuǎn)換成ASCII格式tmboot啟動(dòng)TUXEDO系統(tǒng)服務(wù)tmshutdown關(guān)閉所有或部分應(yīng)用并釋放IPC資源tmadminTUXEDO系統(tǒng)管理buildclient編譯客戶端程序buildserver編譯服務(wù)端程序BEA Tuxedo常用命令使用方法tmloadcf編譯TUXEDO UBB信息Usage:tmloadcf -ycnb ubb文件命令說明:-c 計(jì)算運(yùn)行應(yīng)用需要的IPC資源,該信息將提供給管理員,用于在各機(jī)器上配置資源。-n 進(jìn)行語法檢查并不生成TUXCONFIG。-b 控制TUXCONFIG占用的物理頁數(shù)。-y 無

15、條件覆蓋TUXCONFIG環(huán)境變量TUXCONFIG必須設(shè)定指向二進(jìn)制TUXCONFIG文件。在安全要求高的應(yīng)用中,tmloadcf不能從標(biāo)準(zhǔn)輸入接受,環(huán)境變量APP_PW必須包含應(yīng)用密碼。tmunloadcf將TUXCONFIG轉(zhuǎn)換成ASCII格式Usage:tmunloadcf tmunloadcf將TUXCONFIG轉(zhuǎn)換成ASCII格式用于檢查。該工具讀取環(huán)境變量TUXCONFIG指向的文件。輸出包含所有的參數(shù),包括TUXEDO設(shè)定的缺省值,是UBBCONFIG文件的一個(gè)超集。BEA Tuxedo常用命令使用方法tmboot啟動(dòng)TUXEDO系統(tǒng)服務(wù)Usage: tmboot -w(ait

16、) -n(oexec) -q(uiet) -y -c(heck) -d1 -A | -B loc | -M -S | -l lmid | -s aout | -g grpname | -i srvid | -g grpname -i srvid -o sequence-# -T group-name -E envlabel -e errcmdtmboot命令啟動(dòng)TUXEDO系統(tǒng)的應(yīng)用,創(chuàng)建必要的IPC資源、啟動(dòng)相關(guān)機(jī)器的規(guī)定的系統(tǒng)和應(yīng)用服務(wù)進(jìn)程。大多數(shù)的tmboot的參數(shù)啟動(dòng)了部分系統(tǒng)進(jìn)程。在以下說明和例子中,lmid,grpname和srvid是配置文件中指定的值。-A 啟動(dòng)所有機(jī)器上的管理

17、進(jìn)程。-M 啟動(dòng)主控機(jī)器上的管理進(jìn)程。-i srvid 啟動(dòng)服務(wù)id等于 srvid的進(jìn)程。-g grpname 啟動(dòng)指定的一組服務(wù)(含TMS)-S啟動(dòng)所有應(yīng)用服務(wù)。-s server-name 啟動(dòng)可執(zhí)行文件名為server-name的服務(wù)。-l lmid 啟動(dòng)TMS和指定機(jī)器上的應(yīng)用服務(wù)。-T grpname 啟動(dòng)指定組中所有TMS。-B lmid 啟動(dòng)指定機(jī)器上的BBL。-e command 指定啟動(dòng)進(jìn)程失敗后在主控機(jī)器上運(yùn)行的命令名。-c 打印本配置所需最少的IPC資源。 BEA Tuxedo常用命令使用方法tmshutdown關(guān)閉所有或部分應(yīng)用并釋放IPC資源Usage: tmshu

18、tdown -wdelay|-k TERM|KILL -n(oexec) -q(uiet) -y -c(lt_ign)-A | -B loc | -M -S | -l lmid | -s aout |-g grpname | -i srvid | -g grpname -i srvid-o sequence-# -T group-name -E envlabel-R(elocate) -H lmid -P lmid本命令所用參數(shù)與tmboot類似(如:-A, -g, -i, -s, -S, -l, -M, -B),意義相同。當(dāng)有客戶端正在連接時(shí),tmshutdown 不能關(guān)閉管理服務(wù)。參數(shù)-c

19、則可以超越此規(guī)則。該參數(shù)僅用于管理員需要立即關(guān)機(jī)而又無法及時(shí)通知客戶端時(shí)。參數(shù)-w delay 在delay秒后進(jìn)行強(qiáng)制關(guān)閉。指定的服務(wù)當(dāng)即被掛起,使之不能繼續(xù)接受交易請(qǐng)求。delay的值則允許服務(wù)在一個(gè)合理的時(shí)間內(nèi)完成已經(jīng)接受的請(qǐng)求。在延遲的時(shí)間到達(dá)后,信號(hào)SIGKILL(或SIGTERM)將發(fā)給指定的服務(wù)。該參數(shù)目的是使管理員能夠關(guān)閉發(fā)生死循環(huán)或死鎖的服務(wù)。-A 在所有機(jī)器上啟動(dòng)/關(guān)閉管理的Server進(jìn)程 -M 只在MASTER機(jī)器上啟動(dòng)/關(guān)閉管理的Server進(jìn)程 -i srvid 啟動(dòng)/關(guān)閉某個(gè)server id指定的Server進(jìn)程 -g grpname 啟動(dòng)/關(guān)閉某個(gè)server

20、 group名字指定的Server Group -S 啟動(dòng)/關(guān)閉所有應(yīng)用服務(wù)器(LMID) -s server-name 啟動(dòng)/關(guān)閉某個(gè)server名字指定的Server進(jìn)程 -l lmid option 在指定的機(jī)器上啟動(dòng)/關(guān)閉所有TMS進(jìn)程和應(yīng)用服務(wù)器(LMID) -T grpname 啟動(dòng)/關(guān)閉指定的server group中所有的TMS進(jìn)程 -B lmid 在指定的機(jī)器上啟動(dòng)/關(guān)閉BBL進(jìn)程 -e command 指定一個(gè)程序可以當(dāng)在MASTER機(jī)器上啟動(dòng)任何一個(gè)進(jìn)程失敗時(shí)執(zhí)行BEA Tuxedo常用命令使用方法tmadminTUXEDO系統(tǒng)管理Printserver(psr)服務(wù)信息

21、1. 服務(wù)的可執(zhí)行文件名2. 服務(wù)連接的隊(duì)列名3. 組名4. 服務(wù)的數(shù)字id5. 服務(wù)已經(jīng)處理的請(qǐng)求數(shù)6. 服務(wù)處理的全部請(qǐng)求的參數(shù)和7. 服務(wù)正在處理的交易,若為IDLE則服務(wù)當(dāng)前是空閑Printservice(psc)交易信息1. 交易名2. 交易函數(shù)名3. 服務(wù)可執(zhí)行文件名4. 服務(wù)所在組名5. 服務(wù)的數(shù)字id6. 提供交易的機(jī)器的LMID7. 交易已經(jīng)執(zhí)行的次數(shù)8. 交易當(dāng)前狀態(tài)BEA Tuxedo常用命令使用方法tmadminTUXEDO系統(tǒng)管理Printqueue(pq)隊(duì)列信息1. 隊(duì)列連接的服務(wù)的可執(zhí)行文件名2. 字符隊(duì)列名,是RQADDR參數(shù)或一個(gè)隨機(jī)值3. 連接的服務(wù)數(shù)4.

22、 當(dāng)前隊(duì)列的所有請(qǐng)求的參數(shù)和5. 實(shí)際請(qǐng)求數(shù)6. 平均隊(duì)列長(zhǎng)度7. 隊(duì)列所在機(jī)器的LMIDPrintclient(pclt)客戶端信息1. 已經(jīng)登錄的客戶端機(jī)器的LMID2. 用戶名,由tpinit()提供的3. 客戶端名,由tpinit()提供的4. 客戶端連接后經(jīng)過的時(shí)間5. 客戶端狀態(tài)6. IDLE表示客戶端目前沒有任何交易在工作7. IDLET表示客戶端啟動(dòng)了一個(gè)交易8. BUSY表示客戶端在工作中9. BUSYT表示客戶端正在交易控制下工作10. 啟動(dòng)/提交/中斷的交易數(shù)BEA Tuxedo常用命令使用方法buildclient編譯客戶端程序Usage:buildclient -v

23、o executable f first-file -f first-file -l last-file -w此處first-file表示的應(yīng)該是編譯器可以識(shí)別的文件。缺省的編譯器是cc。一般是.c(c源程序),.C(C+源程序),.o(object)或.a(庫)文件。參數(shù)解釋如下:-o 生成的可執(zhí)行文件名-f 需要在連接TUXEDO庫之前傳給編譯器的文件名。如有多于一個(gè)的文件名,名字應(yīng)用空格分隔并用引號(hào)引起。也可以使用多個(gè)-f參數(shù)。-l 需要在連接TUXEDO庫之前傳給編譯器的文件名。語法同上。-v 編譯過程顯示。-w 采用WS方式編譯BEA Tuxedo常用命令使用方法buildserve

24、r編譯服務(wù)端程序Usage:buildserver -v o executable -s service2,service3:func -f source/object -l object/library file參數(shù)解釋如下:-o 生成的可執(zhí)行文件名-f 需要在連接TUXEDO庫之前傳給編譯器的文件名。如有多于一個(gè)的文件名,名字應(yīng)用空格分隔并用引號(hào)引起。也可以使用多個(gè)-f參數(shù)。-l 需要在連接TUXEDO庫之前傳給編譯器的文件名。語法同上。-v 編譯過程顯示。-b 指定SHM或MP模式。如無此項(xiàng),兩種模式都包括;使用此項(xiàng)可以使生成的可執(zhí)行文件小一點(diǎn)-r 連接此處指出的RM庫。該RM的名字必須

25、含在$TUXDIR/udataobj/RM文件中。BEA Tuxedo的開發(fā)1、通訊緩沖區(qū)類型2、Tuxedo的服務(wù)端編程3、Tuxedo的客戶端編程4、BEA Tuxedo通信方式 5、BEA Tuxedo分布式事務(wù)的處理 BEA Tuxedo的開發(fā)1、通訊緩沖區(qū)類型 Tuxedo的客戶端與服務(wù)端之間的數(shù)據(jù)傳送是通過數(shù)據(jù)庫緩沖區(qū)來進(jìn)行的。Tuxedo的數(shù)據(jù)緩沖區(qū)主要包括STRING、CARRAY、VIEW/VIEW32和FML/FML32。從開始,還增加了XML數(shù)據(jù)緩沖區(qū)。 在Tuxedo中客戶端與服務(wù)端之間進(jìn)行數(shù)據(jù)交換的緩沖區(qū),都要用Tuxedo自己提供的API進(jìn)行操作,不能采用C函數(shù)(m

26、alloc、free)。在用tpalloc()分配一塊緩沖區(qū)之后,在不再需要該緩沖區(qū)時(shí)用tpfree()釋放掉。STRING STRING類型用于數(shù)據(jù)是字符數(shù)組,且以空字符結(jié)束。如果兩臺(tái)機(jī)器之間的編碼不一樣(如一臺(tái)是ASCII,另一臺(tái)是EBCDIC),Tuxedo將自動(dòng)進(jìn)行編碼/解碼工作。STRING一般用于在客戶端與服務(wù)器之間傳送文本數(shù)據(jù)。【使用方法】:用C語言的字符串處理方式進(jìn)行處理。【使用例】:客戶端:if ( ( sendbuf = tpalloc( STRING, NULL, sendlen ) ) = NULL ) fprintf( stderr, Error allocating

27、 send buffern );tpterm( );exit( 1 );BEA Tuxedo的開發(fā)1、通訊緩沖區(qū)類型CARRAY CARRAY類型用于處理二進(jìn)制數(shù)據(jù),其中可以包含空字符,因此在使用該類型進(jìn)行傳輸時(shí)必須指定長(zhǎng)度。如果兩臺(tái)機(jī)器之間的編碼不一樣,Tuxedo不進(jìn)行編碼/解碼工作。如果在客戶端與服務(wù)器之間傳送二進(jìn)制的文件,就要采用CARRAY類型的緩沖區(qū)?!臼褂梅椒ā浚河枚M(jìn)制數(shù)據(jù)處理方式進(jìn)行處理?!臼褂美浚嚎蛻舳耍篿f ( ( sendbuf = tpalloc( CARRAY, NULL, sendlen ) ) = NULL ) fprintf( stderr, Error a

28、llocating send buffern );tpterm( );exit( 1 );BEA Tuxedo的開發(fā)1、通訊緩沖區(qū)類型VIEW / VIEW32 VIEW類型是應(yīng)用程序定義的C結(jié)構(gòu),必須有一個(gè)VIEW描述文件來說明該結(jié)構(gòu)。VIEW類型必須有子類型,用來說明每個(gè)結(jié)構(gòu)成員的類型。 VIEW32類型與VIEW相似,只是允許更大的字符域、更多的域,以及更全面的類型。使用VIEW/VIEW32類型需指定以下環(huán)境變量:VIEWDIR / VIEWDIR32:VIEW結(jié)構(gòu)定義文件的存放路徑,用逗號(hào)隔開;VIEWFILES / VIEW:使用的VIEW結(jié)構(gòu)定義文件名,用逗號(hào)隔開。一般在本應(yīng)用的

29、setenv文件中指定以上環(huán)境變量的設(shè)置。VIEW的使用過程:(1)定義一個(gè)VIEW(VIEW32)的描述文件*.v(2)用viewc(viewc32)命令進(jìn)行編譯,生成對(duì)應(yīng)的*.h文件和*.V文件(3)定義環(huán)境變量VIEWDIR(VIEWDIR32)和VIEWFILES(VIEW)VIEWDIR(VIEWDIR32)為*.V文件路徑VIEWFILES(VIEW)為*.V文件名,如果有多個(gè),采用,號(hào)隔開(4)在使用到該VIEW(VIEW32)的程序中用#include包含生成的*.h文件(5)在程序中可以象使用C語言的結(jié)構(gòu)體一樣使用該VIEW(VIEW32)BEA Tuxedo的開發(fā)1、通訊緩

30、沖區(qū)類型FML / FML32FML類型是Tuxedo自定義的類型,它的每個(gè)數(shù)據(jù)域均有自己的標(biāo)志符、發(fā)生頻次和長(zhǎng)度指示器。FML(FML32)緩沖區(qū)類似于一個(gè)表,它一般用在與數(shù)據(jù)庫有關(guān)的操作中,如把查詢結(jié)果通過FML(FML32)緩沖區(qū)發(fā)送到客戶端,它有自己的一套函數(shù)對(duì)其進(jìn)行操作。FML(FML32)的使用類似于VIEW(VIEW32)。FML與FML32相類似,區(qū)別在于:(1)FML32中使用32位的數(shù)表示字段的ID和該字段的長(zhǎng)度,F(xiàn)ML中使用的是16位的數(shù),所以FML32能表示更大的緩沖區(qū)(2)對(duì)FML32的操作函數(shù)都以32結(jié)尾,環(huán)境變量也以32結(jié)尾BEA Tuxedo的開發(fā)1、通訊緩沖區(qū)

31、類型XML 從開始,Tuxedo支持XML緩沖區(qū),并可根據(jù)XML中某個(gè)ELEMENT(元素)的值、ELEMENT的類型或ATTRIBUTE(屬性)的值實(shí)現(xiàn)數(shù)據(jù)依賴路由。同CARRAY一樣,在對(duì)XML緩沖區(qū)進(jìn)行操作時(shí)要指定緩沖區(qū)的長(zhǎng)度。在中內(nèi)置了XML PARSER,它主要完成以下工作:(1)自動(dòng)檢測(cè)XML緩沖區(qū)所采用的字符集(2)如果XML緩沖區(qū)所采用的字符集不是ASCII或EBCDIC字符集,把ELEMENT和ATTRIBUTE的名字轉(zhuǎn)換為ASCII或EBCDIC(3)檢查緩沖區(qū)中ELEMENT的內(nèi)容和ATTRIBUTE的值(4)數(shù)據(jù)類型轉(zhuǎn)換。在數(shù)據(jù)依賴路由中,如果是采用XML類型,要指定所

32、采用的路由字段的數(shù)據(jù)類型,XML只支持字符型的數(shù)據(jù)。如果路由字段是數(shù)字型的,將自動(dòng)進(jìn)行類型轉(zhuǎn)換XML使用數(shù)據(jù)依賴路由需要在UBBCONFIG中ROUTING小節(jié)中指定BEA Tuxedo的開發(fā)2、Tuxedo的服務(wù)端編程服務(wù)程序的入口參數(shù)TPSVCINFO/* interface to service routines */struct tpsvcinfo #define XATMI_SERVICE_NAME_LENGTH 32 char nameXATMI_SERVICE_NAME_LENGTH;/* service name invoked */ long flags;/* describ

33、es service attributes */ char *data;/* pointer to data */ long len;/* request data length */ int cd;/* reserved for future use */ long appkey;/* application authentication client key */ CLIENTID cltid;/* client identifier for originating client */;typedef struct tpsvcinfo TPSVCINFO;char nameXATMI_SE

34、RVICE_NAME_LENGTH該Service的名字long flags;CLIENT端在tpcall、tpacall等的FLAGS中設(shè)置的值char *data;指向客戶端發(fā)送過來的緩沖區(qū)的首地址long len;data緩沖區(qū)的長(zhǎng)度int cd;當(dāng)采用CONVERSATION通信方式時(shí),對(duì)應(yīng)的CD值。long appkey;當(dāng)采用安全認(rèn)證時(shí),該客戶端所對(duì)應(yīng)的KEY。CLIENTID cltid;用于識(shí)別該客戶端的ID。BEA Tuxedo的開發(fā)2、Tuxedo的服務(wù)端編程tpreturn服務(wù)程序返回結(jié)果 【函數(shù)原型】void tpreturn(int rval, long rcode,

35、 char *data, long len, long flags)【功能說明】tpreturn函數(shù)標(biāo)志服務(wù)處理結(jié)束,并將返回信息發(fā)送給請(qǐng)求者。【參數(shù)說明】rval:TPSUCCESS服務(wù)處理成功; TPFAIL服務(wù)處理失??;rcode:通過該參數(shù)返回調(diào)用者一個(gè)應(yīng)用自定義的值,客戶端可以查詢?nèi)肿兞縯purcode訪問rcode值;data:返回包數(shù)據(jù)指針;len:返回包長(zhǎng)度;flags:未使用,置為0【返回值】無【使用例】:tpreturn( TPSUCCESS, 0, rqst-data, 0L, 0 );BEA Tuxedo的開發(fā)2、Tuxedo的服務(wù)端編程tpsvrinit-服務(wù)初始化

36、 【函數(shù)原型】int tpsvrinit(int agrc, char *argv)【功能說明】 在Server啟動(dòng)時(shí),它將自動(dòng)調(diào)用函數(shù)tpsvrinit(int argc, char *argv)。如果該Server所在的GROUP配置了連接數(shù)據(jù)庫的接口,那么在默認(rèn)情況下,該Service將自動(dòng)調(diào)用TPOPEN(),建立與數(shù)據(jù)庫的連接。【參數(shù)說明】int argc,char *argv參數(shù)的含義與main()函數(shù)的參數(shù)含義一樣。【返回值】執(zhí)行成功返回0,失敗返回-1BEA Tuxedo的開發(fā)2、Tuxedo的服務(wù)端編程tpsvrdone-服務(wù)清理函數(shù) 【函數(shù)原型】int tpsvrdone(

37、)【功能說明】 在Server終止時(shí),tpsvrdone做一些清除工作,如斷開與數(shù)據(jù)庫的連接、從系統(tǒng)的BB中清除與該Server對(duì)應(yīng)的登記項(xiàng)?!緟?shù)說明】無【返回值】無BEA Tuxedo的開發(fā)3、Tuxedo的客戶端Tuxedo有兩種客戶端:本地客戶端和遠(yuǎn)程客戶端Native Client(本地客戶端):是指與Tuxedo服務(wù)器在同一臺(tái)機(jī)器上,不用通過網(wǎng)絡(luò)就可以訪問到Tuxedo服務(wù)器的客戶端。Workstation Client(遠(yuǎn)程客戶端):是指要通過網(wǎng)絡(luò)才可以訪問到Tuxedo服務(wù)器的客戶端。本地客戶端與遠(yuǎn)程客戶端的主要區(qū)別(1)本地客戶端只能用C或COBAL語言編寫,遠(yuǎn)程客戶端可以用

38、幾乎所有的編程語言編寫(2)在遠(yuǎn)程客戶端所在的機(jī)器上要安裝Tuxedo的客戶端軟件,并且要設(shè)置相應(yīng)的環(huán)境變量。在本地客戶端上則不用。(3)用buildclient編譯遠(yuǎn)程客戶端程序時(shí)要加“W”,編譯本地客戶端則不用遠(yuǎn)程客戶端與Tuxedo服務(wù)器建立連接的過程(1)WSC調(diào)用tpinit()或tpchkauth()(2)WSC采用在WSNADDR中指定的IP地址與服務(wù)端的WSL建立連接(3)WSL為該WSC指定一個(gè)WSH,并把該WSH的偵聽端口返回給WSC(4)WSC采用返回的端口與指定的WSH建立連接,并與WSL斷開連接,這之后WSC與Tuxedo Server之間的通信通過WSH進(jìn)行處理,與

39、WSL無關(guān)。(5)tpinit()或tpchkauth()調(diào)用返回 BEA Tuxedo的開發(fā)2、Tuxedo的客戶端與遠(yuǎn)程客戶端有關(guān)的配置(1)在MACHINES中配置MAXWSCLIENTS,即同時(shí)連接到該服務(wù)器上最多可以有多少個(gè)遠(yuǎn)程客戶端(2)在SERVERS中要配置WSL Server WSL SRVGRP=GROUP1 SRVID=1000 CLOPT=-A - -n /128.64.196.14:13134 -m 2 -M 5 -x 6“ CLOPT中可帶的參數(shù)為: -n netaddr:WSL的偵聽端口,遠(yuǎn)程客戶端通過該端口與服務(wù)器建立連接 -m minh:最少啟動(dòng)多少個(gè)WSH進(jìn)

40、程 -M maxh:最多啟動(dòng)多少個(gè)WSH進(jìn)程,默認(rèn)值為MAXWSCLIENTS/x -x mpx_factor:每個(gè)WSH進(jìn)程可以同時(shí)與多少個(gè)遠(yuǎn)程客戶端建立連接 -c compression_threshold:如果在遠(yuǎn)程客戶端與服務(wù)器之間傳送的數(shù)據(jù)包大小(單位為字節(jié))超過“-c”指定的參數(shù),就自動(dòng)進(jìn)行數(shù)據(jù)壓縮。 -T Client_timeout:指定一個(gè)遠(yuǎn)程客戶端的空閑時(shí)間。單位為分鐘,如果沒有指定,WSH永遠(yuǎn)不會(huì)自動(dòng)斷開遠(yuǎn)程客戶端的連接。 -t timeout_factor:指定遠(yuǎn)程客戶端與WSH建立連接的時(shí)間。在指定時(shí)間內(nèi)無法建立連接,那么連接將失敗 -p minwshport -Pm

41、axwshport:指定WSH可以使用的端口范圍BEA Tuxedo的開發(fā)2、Tuxedo的客戶端在遠(yuǎn)程客戶端的機(jī)器上要設(shè)置的環(huán)境變量TUXDIR:Tuxedo客戶端的安裝目錄WSNADDR:遠(yuǎn)程客戶端通過該IP地址與服務(wù)器建立連接,該變量必須。WSTYPE:客戶端類型,該變量可選??蛻舳伺c服務(wù)端之間的通信方式(1)同步調(diào)用(2)異步調(diào)用(3)管道(4)會(huì)話方式(5)廣播、通知(6)/Q隊(duì)列(7)發(fā)布/訂閱BEA Tuxedo的開發(fā)3、Tuxedo的客戶端編程 為了與Tuxedo服務(wù)器端建立連接,Tuxedo Client要調(diào)用tpchkauth()檢查該Tuxedo服務(wù)端所采用的安全方式,并

42、根據(jù)得到的值做相應(yīng)的處理,然后調(diào)用tpinit()建立與Tuxedo的連接,在Tuxedo服務(wù)器端的結(jié)果返回之后,調(diào)用tpterm()斷開與Tuxedo Server的連接。BEA Tuxedo的開發(fā)3、Tuxedo的客戶端編程tpchkauth安全認(rèn)證【函數(shù)原型】int tpchkauth()【功能說明】檢查該Tuxedo Server所采用的安全方式【參數(shù)說明】無【返回值】TPNOAUTH:不需要認(rèn)證TPSYSAUTH:需要口令認(rèn)證TPAPPSUTH:需要口令認(rèn)證,并且還需要應(yīng)用級(jí)的認(rèn)證或授權(quán)1:調(diào)用失敗,錯(cuò)誤號(hào)保證在全局變量tperrno中 BEA Tuxedo的開發(fā)3、Tuxedo的客

43、戶端編程tpinit建立連接 【函數(shù)原型】int tpinit()【功能說明】與Tuxedo服務(wù)器端建立連接【參數(shù)說明】無【返回值】1:調(diào)用失敗,錯(cuò)誤號(hào)保證在全局變量tperrno中BEA Tuxedo的開發(fā)3、Tuxedo的客戶端編程tpterm斷開連接 【函數(shù)原型】int tpterm()【功能說明】與Tuxedo服務(wù)器端斷開連接【參數(shù)說明】無【返回值】1:調(diào)用失敗,錯(cuò)誤號(hào)保證在全局變量tperrno中 BEA Tuxedo的開發(fā)4、BEA Tuxedo通信方式(1)同步調(diào)用(2)異步調(diào)用(3)管道(4)會(huì)話方式(5)廣播、通知(6)/Q隊(duì)列(7)發(fā)布/訂閱BEA Tuxedo的開發(fā)4、B

44、EA Tuxedo通信方式(1)同步調(diào)用tpcallCSBEA Tuxedo的開發(fā)tpcall同步調(diào)用 【函數(shù)原型】int tpcall(char *svc, char *idata, long ilen, char *odata, long *olen, long flags)【功能說明】客戶端同步調(diào)用服務(wù)端名為svc的Service【參數(shù)說明】*svc:Service的名稱char *idata:輸入緩沖區(qū)的地址,客戶端傳給服務(wù)端的參數(shù)放在該緩沖區(qū)內(nèi)long ilen:輸入緩沖區(qū)的長(zhǎng)度char *odata:輸出緩沖區(qū)的地址,服務(wù)端傳給客戶端的結(jié)果放在該緩沖區(qū)內(nèi)long *olen:輸出緩

45、沖區(qū)的長(zhǎng)度long flags:調(diào)用標(biāo)志,有以下幾個(gè): TPNOTRANTPNOCHANGE TPNOBLOCKTPNOTIME TPSIGRSTRT【返回值】0:調(diào)用成功,1:調(diào)用失敗,錯(cuò)誤號(hào)保證在全局變量tperrno中 BEA Tuxedo的開發(fā)4、BEA Tuxedo通信方式(1)同步調(diào)用BEA Tuxedo的開發(fā)4、BEA Tuxedo通信方式(2)異步調(diào)用tpacall( )tpgetrply( )tpcancel()CSSC1C2SBEA Tuxedo的開發(fā)tpacall異步調(diào)用 【函數(shù)原型】int tpacall(char *svc, char *data, long len,

46、 long flags)【功能說明】 客戶端異步調(diào)用服務(wù)端名為svc的Service,不等服務(wù)端返回結(jié)果,程序即可繼續(xù)往下走,在某個(gè)地方可調(diào)用tpgetrply()取得服務(wù)端的返回【參數(shù)說明】*svc:Service的名稱char *data:輸入緩沖區(qū)的地址,客戶端傳給服務(wù)端的參數(shù)放在該緩沖區(qū)內(nèi)long len:輸入緩沖區(qū)的長(zhǎng)度long flags:調(diào)用標(biāo)志,有以下幾個(gè):TPNOREPLY:設(shè)置了該參數(shù),則服務(wù)端不會(huì)給該客戶端發(fā)送應(yīng)答TPNOTRANTPNOBLOCKTPNOTIMETPSIGRSTRT【返回值】1:調(diào)用失敗,成功返回一個(gè)Handler,可做為tpgetrply的參數(shù),用于獲

47、取服務(wù)端的返回結(jié)果 BEA Tuxedo的開發(fā)tpgetrply獲取應(yīng)答步調(diào)用 【函數(shù)原型】int tpgetrply(int *cd, char *data, long *len, long flags)【功能說明】取出服務(wù)端對(duì)tpacall()的應(yīng)答【參數(shù)說明】*cd:tpacall()返回的Handlerchar *data:返回緩沖區(qū)的地址,客戶端傳給服務(wù)端的參數(shù)放在該緩沖區(qū)內(nèi)long *len:返回緩沖區(qū)的長(zhǎng)度long flags:調(diào)用標(biāo)志,有以下幾:TPGETANYTPNOCHANGETPNOBLOCKTPNOTIMETPSIGRSTRT【返回值】1:調(diào)用失敗,錯(cuò)誤號(hào)保證在全局變量

48、tperrno中 BEA Tuxedo的開發(fā)tpcancel取消服務(wù)端調(diào)用 【函數(shù)原型】int tpcancel(int cd)【功能說明】 如果當(dāng)前的程序不處于事務(wù)模式中,取消對(duì)tpacall()的應(yīng)答。如果處于事務(wù)模式中,則不能取消對(duì)tpacall()的應(yīng)答,該調(diào)用會(huì)失敗【參數(shù)說明】cd:tpacall()返回的Handler【返回值】1:調(diào)用失敗,錯(cuò)誤號(hào)保證在全局變量tperrno中BEA Tuxedo的開發(fā)4、BEA Tuxedo通信方式(2)異步調(diào)用BEA Tuxedo的開發(fā)4、BEA Tuxedo通信方式(3)管道tpforward( )CS1S3S2BEA Tuxedo的開發(fā)tp

49、forward管道通訊【函數(shù)原型】void tpforward(char *service, char *data, long len, long flags)【功能說明】 服務(wù)進(jìn)程在處理客戶請(qǐng)求時(shí),不把結(jié)果返回給客戶進(jìn)程,而是把處理過的結(jié)果進(jìn)一步轉(zhuǎn)發(fā)給后續(xù)的其他服務(wù)進(jìn)程,由其他服務(wù)進(jìn)程接著處理,自己繼續(xù)完成另外的服務(wù)請(qǐng)求。被轉(zhuǎn)發(fā)的服務(wù)請(qǐng)求的結(jié)果由后續(xù)服務(wù)進(jìn)程直接返回給客戶進(jìn)程。【參數(shù)說明】service: 要調(diào)用的Service的名字data: 傳送給該Service的輸入緩沖區(qū)len: data緩沖區(qū)的長(zhǎng)度flags: 未使用,置為0【返回值】無 BEA Tuxedo的開發(fā)4、BEA Tu

50、xedo通信方式(3)管道BEA Tuxedo的開發(fā)CS4、BEA Tuxedo通信方式(4)會(huì)話方式 采用會(huì)話通信方式,通信雙方在建立連接之后,可以多次發(fā)送或接收數(shù)據(jù)。Tuxedo中采用的是半雙工的通信方式,這種方式特別適用于大批量數(shù)據(jù)傳輸。發(fā)起者(originator,initiator):發(fā)起該會(huì)話的進(jìn)程,她調(diào)用tpconnect()與服務(wù)器端的一個(gè)service建立連接從屬者(subordinate):tpconnect()中指定的service發(fā)送者(sender):當(dāng)前擁有發(fā)送權(quán)的進(jìn)程,它只能發(fā)送數(shù)據(jù)接收者(receiver):當(dāng)前擁有發(fā)送權(quán)的進(jìn)程,它只能接收數(shù)據(jù)tpconnect

51、( ), tpsend( ), tprecv(),tpdisconnect()BEA Tuxedo的開發(fā)4、BEA Tuxedo通信方式(5)廣播、通知 由服務(wù)進(jìn)程向客戶進(jìn)程以單個(gè)(tpnotify)或批量(tpbroadcast)方式發(fā)出的未經(jīng)客戶請(qǐng)求的廣播或通知信息,客戶可在適當(dāng)?shù)臅r(shí)候檢查(tpchkunsol)是否收到通知消息并定義(tpsetunsol)收到消息后所采取的動(dòng)作。兩種使用方式:(1)一對(duì)一(點(diǎn)對(duì)點(diǎn)):一個(gè)服務(wù)器端進(jìn)程或客戶端進(jìn)程給某個(gè)客戶端進(jìn)程發(fā)消息(2)一對(duì)多(廣播):一個(gè)服務(wù)器端進(jìn)程或客戶端進(jìn)程給符合某個(gè)條件的一組客戶端發(fā)消息消息的通知方式有3種:(1)IGNORE:

52、該Tuxedo應(yīng)用系統(tǒng)中的客戶端不接收任何消息(2)SIGNAL:用SIGUSR1、SIGUSR2信號(hào)通知客戶端有消息到來(3)DIPIN:當(dāng)客戶端調(diào)用ATMI函數(shù)時(shí),順便查看是否有消息,如果有則調(diào)用消息出來函數(shù)進(jìn)行處理。消息的通知方式在UBBCONFIG文件的RESOURCES中設(shè)置,默認(rèn)為DIPINBEA Tuxedo的開發(fā)4、BEA Tuxedo通信方式(5)廣播、通知BEA Tuxedo的開發(fā)PPQ4、BEA Tuxedo通信方式(6)/Q隊(duì)列 /Q部件是Tuxedo系統(tǒng)的一個(gè)重要組成部分,它提供了一個(gè)可靠隊(duì)列機(jī)制,允許消息按照某種排隊(duì)規(guī)則存儲(chǔ)到磁盤上或內(nèi)存中,然后再轉(zhuǎn)發(fā)給其他處理進(jìn)程

53、。這種存儲(chǔ)轉(zhuǎn)發(fā)機(jī)制可以保證在兩個(gè)通信實(shí)體之間傳遞的消息不丟失、不重傳,從而保證交易的完整性BEA Tuxedo的開發(fā)4、BEA Tuxedo通信方式(7)發(fā)布/訂閱 客戶端與服務(wù)器之間還可以通過發(fā)布/訂閱來進(jìn)行通信,對(duì)某一事件()或某一類事件感興趣的客戶端或服務(wù)端可以訂閱該事件。當(dāng)該事件發(fā)生時(shí),已訂閱了該事件的進(jìn)程就可以收到該事件,在程序中可對(duì)這些事件進(jìn)行處理。Tuxedo的事件分為系統(tǒng)事件和用戶自定義事件:系統(tǒng)事件:是由Tuxedo系統(tǒng)內(nèi)定義的。如系統(tǒng)重啟或關(guān)閉等,都會(huì)產(chǎn)生一個(gè)系統(tǒng)事件用戶自定義事件:是由應(yīng)用自己定義的事件。當(dāng)某種條件滿足時(shí),調(diào)用tppost()產(chǎn)生該事件tppost( )t

54、psubscribe( )BEA Tuxedo配置信息UBBCONFIG一個(gè)BEA TUXEDO應(yīng)用包含四個(gè)基本組成部分: 一個(gè)用來描述應(yīng)用的配置文件 執(zhí)行服務(wù)請(qǐng)求的服務(wù)器(Server) 發(fā)起請(qǐng)求的客戶端(Client) 構(gòu)造和運(yùn)行應(yīng)用的命令 UBBCONFIG文件是配置文件的文本形式,可以使用任何一個(gè)文本編輯器創(chuàng)建和修改。你必須為每個(gè)新應(yīng)用創(chuàng)建一個(gè)UBBCONFIG文件。TUXCONFIG 文件是配置文件的二進(jìn)制形式BEA Tuxedo配置信息UBBCONFIG1、RESOURCES:設(shè)置域范圍參數(shù)(必須) RESOURCES小節(jié)是一個(gè)必須存在的小節(jié),并且必須是配置文件中的第一個(gè)小節(jié)。本節(jié)

55、包括如下信息:共享內(nèi)存的地址(IPCKEY)啟動(dòng)和關(guān)閉服務(wù)程序的管理點(diǎn)(MASTER)訪問應(yīng)用的用戶控制(UID、GID和PERM)本應(yīng)用的安全級(jí)別(SECURITY、AUTHSVC)應(yīng)用中各進(jìn)程的IPC限制,服務(wù)器進(jìn)程的數(shù)量,以及提供的服務(wù)數(shù)(MAXACCESSERS、MAXSERVERS、MAXSERVICES)應(yīng)用結(jié)構(gòu)(MODEL),表明是單機(jī)器應(yīng)用還是多機(jī)器應(yīng)用是否使用服務(wù)器負(fù)載均衡(LDBAL)緩沖區(qū)類型和子類型的最大數(shù)目(MAXBUFTYPE、MAXBUFSTYPE)公告牌健全掃描(sanity scans)的時(shí)間間隔(SCANUNIT、SANITYSCAN)服務(wù)請(qǐng)求的超時(shí)值(BL

56、OCKTIME)并發(fā)會(huì)話最大數(shù)目(MAXCONV)主動(dòng)通知方法(NOTIFY、USIGNAL) BEA Tuxedo配置信息UBBCONFIG2、MACHINES:配置機(jī)器(必須) 應(yīng)用中的每個(gè)機(jī)器必須在配置文件的MACHINES小節(jié)中有一個(gè)入口項(xiàng),并且該小節(jié)必須是配置文件的第二個(gè)小節(jié)。MACHINES小節(jié)中包含應(yīng)用中每個(gè)機(jī)器的如下信息: 機(jī)器地址到邏輯標(biāo)識(shí)(LMID)的映射 配置文件的位置(TUXCONFIG) BEA TUXEDO軟件的安裝位置(TUXDIR) 應(yīng)用服務(wù)器的位置(APPDIR) 應(yīng)用日志文件的位置(ULOGPFX) 環(huán)境文件的位置(ENVFILE)MACHINES小節(jié)中必需

57、的幾個(gè)參數(shù)是LMID、TUXCONFIG、TUXDIR和APPDIRBEA Tuxedo配置信息UBBCONFIG3、GROUPS:配置組信息(必須) 通過GROUPS小節(jié)可以指定從邏輯上分組的服務(wù)器集,這些服務(wù)器組以后可被用來訪問資源管理器(resource managers),并且便于服務(wù)器組遷移。配置文件的GROUPS小節(jié)包含對(duì)服務(wù)器組的定義。你必須為有應(yīng)用服務(wù)器運(yùn)行其上的機(jī)器定義至少一個(gè)服務(wù)器組。 對(duì)于無事務(wù)、非分布式系統(tǒng),組非常簡(jiǎn)單,只需定義組名到組號(hào)的基本映射及各組的邏輯機(jī)器即可。此外還有更多靈活選項(xiàng)以支持分布式的帶事務(wù)的系統(tǒng)。組名是GROUPS小節(jié)入口項(xiàng)的基礎(chǔ),它是一個(gè)字母數(shù)字混

58、合名稱,通過它來識(shí)別一個(gè)組。一個(gè)組必須有一個(gè)唯一的組號(hào)(GRPNO),并且必須位于一個(gè)邏輯機(jī)器(LMID)上,LMID也是必須的。BEA Tuxedo配置信息UBBCONFIG4、SERVERS:配置服務(wù)器(可選) 配置文件的SERVERS小節(jié)包含某個(gè)服務(wù)器進(jìn)程的信息。雖然本小節(jié)并非必需,但是一個(gè)配置文件中沒有本小節(jié)的應(yīng)用將沒有應(yīng)用服務(wù)器,因此將沒有實(shí)際功能。本小節(jié)的每個(gè)入口項(xiàng)代表一個(gè)要在應(yīng)用中被啟動(dòng)的服務(wù)器進(jìn)程,包含如下信息: 一個(gè)服務(wù)器名稱、組別以及數(shù)字標(biāo)識(shí)(SRVGRP、SRVID) 命令行選項(xiàng)(CLOPT) 執(zhí)行服務(wù)器啟動(dòng)順序和啟動(dòng)個(gè)數(shù)的參數(shù)(SEQUENCE、MIN、MAX) 一個(gè)服

59、務(wù)器專用的環(huán)境文件(ENVFILE) 與服務(wù)器隊(duì)列有關(guān)的信息(RQADDR、RQPERM、REPLYQ、RPPERM) 重啟動(dòng)信息(RESTART、RCMD、MAXGEN、GRACE) 服務(wù)器被指定為一個(gè)會(huì)話服務(wù)器(CONV) 重載系統(tǒng)范圍的共享內(nèi)存訪問設(shè)置(SYSTEM_ACCESS)BEA Tuxedo配置信息UBBCONFIG5、SERVICES:配置服務(wù)(可選) 通過配置文件中的SERVICES小節(jié)可以指定BEA TUXEDO服務(wù)的信息。這些信息對(duì)于無事務(wù)、非分布式應(yīng)用相對(duì)簡(jiǎn)單。SERVICES小節(jié)包含下面一些信息: 負(fù)載均衡信息(SRVGRP) 給服務(wù)賦予優(yōu)先級(jí) 為不同的服務(wù)器組指定

60、不同的服務(wù)參數(shù) 緩沖區(qū)類型檢查信息(BUFTYPE)BEA Tuxedo配置信息UBBCONFIG6、ROUTING:配置路由(可選) UBBCONFIG文件的ROUTING小節(jié)允許對(duì)在SERVICES小節(jié)中命名的路由標(biāo)準(zhǔn)(routing criteria)進(jìn)行全面的定義(針對(duì)BEA TUXEDO數(shù)據(jù)依賴性路由)。BEA Tuxedo配置信息UBBCONFIG7、NETGROUPS/NETWORK:配置網(wǎng)絡(luò)信息 UBBCONFIG文件的NETGROUPS小節(jié)描述在在局域網(wǎng)環(huán)境下應(yīng)用可用的網(wǎng)絡(luò)組。對(duì)于網(wǎng)絡(luò)組的個(gè)數(shù)沒有限制,每個(gè)網(wǎng)絡(luò)組可能被分配一對(duì)機(jī)器。一個(gè)網(wǎng)絡(luò)組不同網(wǎng)絡(luò)成員之間采用的通訊方法由優(yōu)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論