XX銀行前置平臺(tái)基本原理及設(shè)計(jì)課件_第1頁(yè)
XX銀行前置平臺(tái)基本原理及設(shè)計(jì)課件_第2頁(yè)
XX銀行前置平臺(tái)基本原理及設(shè)計(jì)課件_第3頁(yè)
XX銀行前置平臺(tái)基本原理及設(shè)計(jì)課件_第4頁(yè)
XX銀行前置平臺(tái)基本原理及設(shè)計(jì)課件_第5頁(yè)
已閱讀5頁(yè),還剩40頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、內(nèi)容提要設(shè)計(jì)思想及定位總體架構(gòu)重要模塊介紹設(shè)計(jì)思想定位行業(yè)背景銀行一般將核心業(yè)務(wù)邏輯和業(yè)務(wù)數(shù)據(jù)存放在核心業(yè)務(wù)系統(tǒng)或稱主機(jī)系統(tǒng)中。為保證業(yè)務(wù)系統(tǒng)的規(guī)范性,核心業(yè)務(wù)系統(tǒng)要求具有高度的穩(wěn)定性;各種中間代理業(yè)務(wù)則存在不規(guī)范性和十分強(qiáng)的第三方依賴性。將要求穩(wěn)定性高的核心業(yè)務(wù)系統(tǒng)與規(guī)范性弱、第三方依賴性強(qiáng)的中間代理業(yè)務(wù)系統(tǒng)進(jìn)行分離,是銀行保持業(yè)務(wù)系統(tǒng)穩(wěn)定發(fā)展,中間代理業(yè)務(wù)不斷創(chuàng)新的有效途徑。南天OFP PreBranch+ 系統(tǒng)的研發(fā),其基本出發(fā)點(diǎn)是建立在將核心業(yè)務(wù)系統(tǒng)與中間代理業(yè)務(wù)系統(tǒng)進(jìn)行分離的基礎(chǔ)之上,為銀行提供服務(wù)渠道的統(tǒng)一接入平臺(tái),提供中間代理業(yè)務(wù)的生成平臺(tái),提供與銀行核心業(yè)務(wù)系統(tǒng)和其它業(yè)務(wù)應(yīng)用系

2、統(tǒng),銀行代理業(yè)務(wù)合作單位(亦稱:第三方),及銀行為客戶提供的各種業(yè)務(wù)服務(wù)渠道在內(nèi)的系統(tǒng)聯(lián)結(jié)功能的綜合前置平臺(tái)。設(shè)計(jì)思想(一)PreBranch+從最初的設(shè)計(jì)開(kāi)始就采用了先進(jìn)的面向構(gòu)件的設(shè)計(jì)思想,其基本的組件是原子交易。所有的功能都可根據(jù)業(yè)務(wù)需求組裝相應(yīng)的原子交易,并根據(jù)具體的參數(shù)配置運(yùn)行指定的功能,使應(yīng)用設(shè)計(jì)人員可以將大部分的精力用于關(guān)注業(yè)務(wù)功能而不是技術(shù)細(xì)節(jié)。從技術(shù)體系上,系統(tǒng)采用層次化設(shè)計(jì)思想,簡(jiǎn)化了系統(tǒng)的復(fù)雜度,同時(shí)提高了系統(tǒng)的各個(gè)層次之間的獨(dú)立性,增強(qiáng)了系統(tǒng)的可維護(hù)性。設(shè)計(jì)思想(二)產(chǎn)品定位開(kāi)放式金融前置平臺(tái) -銀行前端服務(wù)渠道及后端業(yè)務(wù)產(chǎn)品的整合平臺(tái)總體架構(gòu)產(chǎn)品系統(tǒng)邏輯結(jié)構(gòu)參數(shù)化數(shù)據(jù)

3、庫(kù)定制管理核心處理系統(tǒng)接入適配器PB運(yùn)行平臺(tái)可視化定制定制數(shù)據(jù)部署用戶、連接管理PB定制平臺(tái)AE運(yùn)行、監(jiān)控參數(shù)管理PB監(jiān)控、管理平臺(tái)系統(tǒng)技術(shù)結(jié)構(gòu)圖(一)系統(tǒng)技術(shù)結(jié)構(gòu)圖(二)數(shù)據(jù)交換引擎:整個(gè)系統(tǒng)的核心,除基于中間件產(chǎn)品(BEA TUXEDO或NANTIAN UNIBRIDGE)構(gòu)建(網(wǎng)關(guān)進(jìn)程除外),數(shù)據(jù)交換引擎由以下四個(gè)部分組成流程控制(交易流程解釋執(zhí)行) 數(shù)據(jù)交換(變量池) 差錯(cuò)處理(異常流程和系統(tǒng)沖正) 智能網(wǎng)關(guān)(PreGateway) 二次開(kāi)發(fā)平臺(tái) (AE)系統(tǒng)管理監(jiān)控平臺(tái)(硬件環(huán)境監(jiān)控、軟件系統(tǒng)資源監(jiān)控、應(yīng)用進(jìn)程監(jiān)控) 業(yè)務(wù)管理監(jiān)控平臺(tái)(交易監(jiān)控、業(yè)務(wù)狀態(tài)監(jiān)控) 中間業(yè)務(wù)處理及外圍應(yīng)用

4、插件(費(fèi)率管理、協(xié)議管理、權(quán)限管理)系統(tǒng)軟件環(huán)境運(yùn)行平臺(tái)建立UNIX或LINUX操作系統(tǒng)之上,采用了中間件技術(shù)和數(shù)據(jù)庫(kù)技術(shù),中間件主要支持TUXEDO,數(shù)據(jù)庫(kù)可支持ORACLE、INFORMIX和SYBASE,開(kāi)發(fā)語(yǔ)言為C。xx前置平臺(tái)系統(tǒng)軟件環(huán)境為:AIX5.3 ,TUXEDO9.1和ORACLE9i、ORACLE10g(分行前置)。AE2.0為PB2.0的二次開(kāi)發(fā)平臺(tái),在設(shè)計(jì)上采用CS結(jié)構(gòu)。開(kāi)發(fā)工具為BCB6.0。運(yùn)行環(huán)境為WIN9X/XP/2K/NT等,與數(shù)據(jù)庫(kù)連接方式為ADO方式,目前支持ORACLE/DB2/SYBASE/INFORMIX等主流數(shù)據(jù)庫(kù)。系統(tǒng)管理和監(jiān)控平臺(tái)采用B/S結(jié)構(gòu)

5、,基于J2EE架構(gòu),引入開(kāi)源框架Struts、Spring 、Hibernate ,iReport。開(kāi)發(fā)語(yǔ)言為JAVA、JSP。數(shù)據(jù)庫(kù)支持:ORACLE、mysql等,可部署在UNIX或LINUX操作系統(tǒng)之上。重要模塊介紹系統(tǒng)基本概念(一)業(yè)務(wù)種類:是一個(gè)具有相互關(guān)系的交易流程的集合,共同完成一類特定的功能,在業(yè)務(wù)層面可看作完成特定功能的金融服務(wù)產(chǎn)品。內(nèi)部交易流程:每個(gè)業(yè)務(wù)處理交易在運(yùn)行平臺(tái)表現(xiàn)為一個(gè)由原子交易組成的的執(zhí)行流程,對(duì)應(yīng)于一個(gè)特定的內(nèi)部交易碼,對(duì)應(yīng)的記錄關(guān)鍵字叫內(nèi)部交易碼。原子交易:交易流程的最小可執(zhí)行單元,是對(duì)業(yè)務(wù)處理的細(xì)分和歸納,以軟件復(fù)用為目的,以函數(shù)方式實(shí)現(xiàn) 。渠道:與外部

6、系統(tǒng)的一個(gè)通訊通道,并采用統(tǒng)一的報(bào)文格式進(jìn)行信息的交換,在現(xiàn)實(shí)中,一個(gè)外部系統(tǒng)在PB中可以表現(xiàn)為一個(gè)或多個(gè)渠道。外部交易:對(duì)于每個(gè)渠道,pb平臺(tái)與外部系統(tǒng)進(jìn)行交互時(shí),從通訊接口層面上看到的另外一個(gè)系統(tǒng)提供的一個(gè)交易功能,在PB內(nèi)部表現(xiàn)為關(guān)聯(lián)一個(gè)請(qǐng)求報(bào)文和一個(gè)應(yīng)答報(bào)文的外部交易記錄。對(duì)應(yīng)的記錄關(guān)鍵字叫外部交易碼。報(bào)文格式:PB與系統(tǒng)之間的通訊信息實(shí)體,是由許多報(bào)文域組成的集合,并按一定的格式組織成一段報(bào)文,對(duì)應(yīng)的記錄關(guān)鍵字叫做報(bào)文格式號(hào)。系統(tǒng)基本概念(二)其它的重要概念包括:數(shù)據(jù)字典、變量池、處理函數(shù)、流程模塊、業(yè)務(wù)組、響應(yīng)碼等。交換引擎正是基于這些概念完成交換功能,相互關(guān)系如下 :系統(tǒng)模塊接口

7、統(tǒng)通訊接口主要可分為內(nèi)部通訊接口和外部通訊接口,內(nèi)部通訊接口是指智能網(wǎng)管與交換引擎之間的接口,外部通訊接口分為請(qǐng)求渠道與PB系統(tǒng)之間的接口和PB系統(tǒng)與服務(wù)渠道之間的接口。系統(tǒng)模塊接口內(nèi)部通訊接口是指智能網(wǎng)管與交換引擎之間的接口,由于接入方式不同,系統(tǒng)設(shè)計(jì)了不同的網(wǎng)關(guān):TUXEDO 網(wǎng)關(guān)PBMIDGW、TCP/IP網(wǎng)關(guān)和虛擬網(wǎng)關(guān)。三種網(wǎng)關(guān)與交換引擎的關(guān)系,都是激活與被激活的關(guān)系,即網(wǎng)關(guān)需要啟動(dòng)作為TUXEDO APPSERVER的交換引擎,啟動(dòng)方式如下:PBMIDGW :tpforward 方式啟動(dòng)交換引擎,通訊session直接交接給交換引擎,交換引擎通過(guò)tpreturn返回結(jié)果。虛擬網(wǎng)關(guān):

8、純異步方式,通過(guò)tpacall方式啟動(dòng)交換引擎,虛擬網(wǎng)關(guān)不接收應(yīng)答。系統(tǒng)內(nèi)部模塊接口(二)對(duì)于交換引擎與TCP/IP之間數(shù)據(jù)相對(duì)復(fù)雜,首先通訊是雙向的,包括從引擎發(fā)起的對(duì)外部系統(tǒng)的請(qǐng)求服務(wù)和外部系統(tǒng)通過(guò)TCP/IP網(wǎng)關(guān)接入,其次TCP/IP網(wǎng)關(guān)的通訊模式是多種多樣的,而且需要支持會(huì)話模式,允許一次會(huì)話雙方多次交互。其機(jī)制如下:交換引擎發(fā)起的對(duì)外請(qǐng)求和應(yīng)答報(bào)文通過(guò)隊(duì)列進(jìn)行交互。TCP/IP網(wǎng)關(guān)接入時(shí)通過(guò)tpacall方式啟動(dòng)交換引擎,應(yīng)答報(bào)文通過(guò)隊(duì)列G2M(網(wǎng)關(guān)到主控隊(duì)列,單工傳輸)返回到TCP/IP網(wǎng)關(guān)。由于隊(duì)列的共享性,通訊實(shí)體通過(guò)跟蹤碼完成應(yīng)答報(bào)文的識(shí)別。通過(guò)命令詞完成會(huì)話功能的要求。請(qǐng)求

9、渠道系統(tǒng)與接入網(wǎng)關(guān)之間接口PBMIDGW :接收TUXEDO客戶端發(fā)起的請(qǐng)求,按連接方式可以分為:Tuxedo Client 和 域方式兩種,按服務(wù)名稱直接訪問(wèn)PBMIDGW。虛擬網(wǎng)關(guān):通過(guò)隊(duì)列交換數(shù)據(jù),采用純異步的方案,一般運(yùn)用于本地服務(wù),比如:沖正。請(qǐng)求方把請(qǐng)求報(bào)文放入隊(duì)列中即結(jié)束,虛擬網(wǎng)關(guān)服務(wù)器從隊(duì)列中讀取消息,發(fā)送到交換引擎進(jìn)行處理。TCP/IP網(wǎng)關(guān):TCP/IP網(wǎng)關(guān)是PB中最重要的網(wǎng)關(guān),TCP/IP按通訊模式可分為五種,同步短連接、同步長(zhǎng)連接、異步短連接、異步長(zhǎng)連接單工雙鏈、異步長(zhǎng)連接雙工單鏈。系統(tǒng)按渠道的方式進(jìn)行組織,但對(duì)于同一個(gè)TCP/IP渠道,可分為獨(dú)立的請(qǐng)求渠道、請(qǐng)求與服務(wù)共

10、享的渠道。由于技術(shù)的限制和業(yè)務(wù)的不同需要,可以有如下兩種組合情況。同步短連接、同步長(zhǎng)連接:對(duì)于同步通訊模式,請(qǐng)求渠道必須是獨(dú)立的,不能與服務(wù)渠道共享,如果互聯(lián)的雙方是雙向通訊(包括外部系統(tǒng) PB ,PB外部系統(tǒng))。需要建立兩個(gè)渠道,分別為請(qǐng)求渠道和服務(wù)渠道。異步短連接、異步長(zhǎng)連接單工雙鏈、異步長(zhǎng)連接雙工單鏈:對(duì)于異步通許模式,請(qǐng)求渠道和服務(wù)渠道可以共享,因此互聯(lián)時(shí)一般只建立一個(gè)渠道,根據(jù)業(yè)務(wù)的需要既可以作為請(qǐng)求渠道也可以作為服務(wù)渠道。服務(wù)網(wǎng)關(guān)與服務(wù)渠道系統(tǒng)之間接口目前PB系統(tǒng)支持的直接與服務(wù)渠道系統(tǒng)之間的通訊方式主要有兩種TUXEDO域通訊方式和TCP/IP方式,其他通訊方式通過(guò)與TCP/IP

11、網(wǎng)關(guān)中轉(zhuǎn)完成,比如MQ的通訊方式。域通訊方式:利用中間件的特性,遠(yuǎn)程域服務(wù)引入到本地,系統(tǒng)通過(guò)ServiceName 訪問(wèn)系統(tǒng),對(duì)應(yīng)應(yīng)用系統(tǒng)透明,就象訪問(wèn)本地服務(wù)一樣。TCP/IP通訊方式:如上節(jié)所述,PB設(shè)計(jì)了單獨(dú)的以操作系統(tǒng)進(jìn)程實(shí)現(xiàn)的TCP/IP通訊網(wǎng)關(guān),通訊網(wǎng)關(guān)系統(tǒng)按渠道的方式進(jìn)行組織和管理,但對(duì)于同一個(gè)TCP/IP渠道,可分為獨(dú)立的服務(wù)渠道、請(qǐng)求與服務(wù)共享的渠道。對(duì)應(yīng)同步方式,服務(wù)渠道必須獨(dú)立,對(duì)應(yīng)異步方式可以根據(jù)需要獨(dú)立或共享。數(shù)據(jù)交換引擎(一)系統(tǒng)運(yùn)行起來(lái)后,智能網(wǎng)關(guān)的物理形式有兩種:TUXEDO的APPSERVER和操作系統(tǒng)普通進(jìn)程。系統(tǒng)所有的業(yè)務(wù)種類被分成不同的業(yè)務(wù)組,每個(gè)業(yè)務(wù)

12、組以一組TUXEDO APPSERVER 進(jìn)行部署,共享服務(wù)資源。數(shù)據(jù)交換引擎(二)主控主干模塊:主控接受接入渠道的請(qǐng)求,進(jìn)行系統(tǒng)運(yùn)行環(huán)境的初始化,調(diào)用流程控制模塊按定制數(shù)據(jù)執(zhí)行相應(yīng)的交易流程,最后記錄交易信息,并釋放資源。流程控制執(zhí)行模塊從共享內(nèi)存獲取到內(nèi)部交易流程定制數(shù)據(jù),解釋執(zhí)行相關(guān)的原子交易,并進(jìn)行流程執(zhí)行順序的控制,目前支持的流程控制語(yǔ)句包括:IF ELSE ENDIF IFNOT ENDIFNOSwitch Case. Default ENDCASE.WHILE ENDWHILEDO DOWHILE RETURN EXIT.以及配置在原子交易錯(cuò)誤處理參數(shù)中的直接跳轉(zhuǎn),相對(duì)于GOTO

13、。同時(shí)還支持流程模塊,即由原子交易集組成的功能模塊,相當(dāng)于子流程,以加強(qiáng)流程復(fù)用。 數(shù)據(jù)交換引擎(三)變量池及全局變量當(dāng)原子交易流程被執(zhí)行時(shí),相互之間以及與系統(tǒng)需要直接交換數(shù)據(jù)信息,PB平臺(tái)提供了兩種實(shí)體,變量池和全局變量。采用變量池的原因是傳統(tǒng)的以數(shù)據(jù)結(jié)構(gòu)為基礎(chǔ)的程序已無(wú)法滿足各種業(yè)務(wù)系統(tǒng)靈活多變的數(shù)據(jù)要求。把各種類型的數(shù)據(jù)抽象為內(nèi)存變量池,數(shù)據(jù)在變量池中可以由控制文件控制數(shù)據(jù)的類型、長(zhǎng)度。每種業(yè)務(wù)可以根據(jù)各自的數(shù)據(jù)要求靈活定制私有的變量池。另外一個(gè)原子交易可以互換數(shù)據(jù)信息的機(jī)制是全局變量,目前系統(tǒng)級(jí)的全局變量主要有:FrontBuff : 存儲(chǔ)從智能網(wǎng)關(guān)轉(zhuǎn)發(fā)過(guò)來(lái)的交易請(qǐng)求數(shù)據(jù)信息。PkgB

14、uff : 解包時(shí)獲取原始報(bào)文的地方;打包時(shí)存儲(chǔ)生產(chǎn)的最終報(bào)文。Logfile : 當(dāng)前交易日志文件名稱。系統(tǒng)級(jí)的變量池主要包括兩個(gè)結(jié)構(gòu): PBSYS、APSYS。其中在主控主干流程中已經(jīng)初始化,并在后續(xù)的原子交易里都能夠存取的包括在PBSYS中的變量池單元如下:AreaNo 區(qū)域號(hào)BusiType 業(yè)務(wù)種類TranCode 當(dāng)前流程的內(nèi)部交易碼數(shù)據(jù)交換引擎(四)RChnlNo 當(dāng)前交易請(qǐng)求渠道號(hào)RTranCode 請(qǐng)求渠道的外部交易碼SysErrNo 系統(tǒng)錯(cuò)誤碼,初始值為”0000”,表示狀態(tài)正常。PbJourNo 交易流水號(hào),目前為6位。PbDate PB帳務(wù)日期SysDate 當(dāng)前主機(jī)系

15、統(tǒng)日期YYYYMMDDSysTime 當(dāng)前主機(jī)系統(tǒng)時(shí)間hhmmssJourFlag 交易流水標(biāo)志,說(shuō)明是否記錄流水RevTimes 內(nèi)部交易的沖正次數(shù)RevLvl 內(nèi)部交易的沖正級(jí)別APSYS中的變量池單元如下:SYear 系統(tǒng)時(shí)間年 YYYYSMonth 系統(tǒng)時(shí)間月 MMSDay 系統(tǒng)時(shí)間 天BankNo 第三方銀行號(hào)(一般用于中間業(yè)務(wù),業(yè)務(wù)種類信息)。變量池定義及訪問(wèn)接口變量池按業(yè)務(wù)種類進(jìn)行定義,變量池定義的依據(jù)是系統(tǒng)數(shù)據(jù)字典和應(yīng)用數(shù)據(jù)字典 在進(jìn)行變量池訪問(wèn)時(shí),系統(tǒng)按(通訊結(jié)構(gòu)名,數(shù)據(jù)域序號(hào),維數(shù)下標(biāo))進(jìn)行訪問(wèn),便于管理和記憶變量池存儲(chǔ)和運(yùn)行機(jī)制當(dāng)系統(tǒng)運(yùn)行時(shí),交換引擎收到交易請(qǐng)求后查找對(duì)應(yīng)

16、內(nèi)部交易流程所屬的業(yè)務(wù)種類,按本業(yè)務(wù)種類的變量池定義生成變量池(分配變量池存儲(chǔ)空間)。并在整個(gè)交易流程處理過(guò)程中保持不變,交易流程運(yùn)行結(jié)束后釋放變量池存儲(chǔ)空間。報(bào)文解析(一)對(duì)各種報(bào)文格式的打包和解包是交換引擎重要的功能之一:報(bào)文解析(二)在PB中報(bào)文被看著由多個(gè)數(shù)據(jù)域按某種方式組織的信息數(shù)據(jù)段,報(bào)文的打包過(guò)程就是根據(jù)預(yù)先的定義從變量池中獲取數(shù)據(jù)域值組織成數(shù)據(jù)信息段的過(guò)程,解包過(guò)程就是根據(jù)報(bào)文定義,把信息數(shù)據(jù)段按定義的格式解析成數(shù)據(jù)域,并存放到變量池的過(guò)程。在PB中為了定義簡(jiǎn)單和便于理解,采取如上圖的機(jī)制:根據(jù)渠道通訊協(xié)議,制定包含報(bào)文數(shù)據(jù)域的超集數(shù)據(jù)字典,同時(shí)定義報(bào)文的組織結(jié)構(gòu),比如:XML

17、、SOP、8583等。從數(shù)據(jù)字典中,抽取數(shù)據(jù)域的子集定義數(shù)據(jù)報(bào)文。對(duì)應(yīng)具體的業(yè)務(wù),如果需要解析對(duì)應(yīng)渠道報(bào)文,把此報(bào)文對(duì)應(yīng)的數(shù)據(jù)字典作為變量池依據(jù),生成變量池。系統(tǒng)接收到數(shù)據(jù)報(bào)文,按定制獲取其報(bào)文格式定義。在定義報(bào)文格式的過(guò)程中,隱含定義了對(duì)應(yīng)的變量池,解包的過(guò)程就是根據(jù)定義分解數(shù)據(jù)域存放到變量池中。應(yīng)用程序使用API存取變量池,進(jìn)行報(bào)文信息的設(shè)置和獲取。報(bào)文解析(三)為了增加報(bào)文解析過(guò)程中的靈活性,在解包和打包過(guò)程中,分別預(yù)留了報(bào)文打包解包前處理、打包解包后處理,數(shù)據(jù)域前處理處理函數(shù),供開(kāi)發(fā)人員進(jìn)行自定義功能。目前系統(tǒng)支持的報(bào)文格式包括:8583、類8583SOPXML定長(zhǎng)字符串、變長(zhǎng)分割符串

18、、混合串類C語(yǔ)言結(jié)構(gòu)TCP/IP網(wǎng)關(guān)架構(gòu)為了實(shí)現(xiàn)TCP/IP網(wǎng)關(guān)的統(tǒng)一管理,對(duì)于所有渠道的網(wǎng)關(guān)進(jìn)程建立一個(gè)統(tǒng)一的進(jìn)程系,由網(wǎng)關(guān)管理進(jìn)程負(fù)責(zé)。pb :網(wǎng)關(guān)管理客戶端程序,負(fù)責(zé)發(fā)起網(wǎng)關(guān)的管理命令的工具,包括啟動(dòng)網(wǎng)關(guān)、停止網(wǎng)關(guān)和查看網(wǎng)關(guān)進(jìn)程信息三種命令。PBB:為網(wǎng)關(guān)進(jìn)程系的父進(jìn)程,接收pb客戶端請(qǐng)求,負(fù)責(zé)網(wǎng)關(guān)進(jìn)程的有管理和維護(hù)工作,包括啟動(dòng)網(wǎng)關(guān)各渠道主進(jìn)程、維護(hù)網(wǎng)關(guān)進(jìn)程信息、接收pb發(fā)送過(guò)來(lái)的命令執(zhí)行相關(guān)管理工作。GWn:為各個(gè)網(wǎng)關(guān)進(jìn)程(提供渠道服務(wù))。網(wǎng)關(guān)通訊進(jìn)程邏輯結(jié)構(gòu)(一)當(dāng)外部系統(tǒng)作為服務(wù)方: TCP/IP網(wǎng)關(guān)從隊(duì)列接收請(qǐng)求,根據(jù)命令字與外部系統(tǒng)進(jìn)行數(shù)據(jù)報(bào)交換。當(dāng)外部系統(tǒng)作為請(qǐng)求方:TCP

19、/IP網(wǎng)關(guān)接收外部請(qǐng)求,轉(zhuǎn)換成內(nèi)部通訊格式FrontBuff,通過(guò)tpacall方式觸發(fā)交換引擎,交易引擎通過(guò)隊(duì)列返回應(yīng)答報(bào)文。網(wǎng)關(guān)通訊進(jìn)程邏輯結(jié)構(gòu)(二)根據(jù)不同TCP/IP網(wǎng)關(guān)執(zhí)行體,按通訊模式同步短連接、同步長(zhǎng)連接、異步短連接、異步長(zhǎng)連接單工雙鏈、異步長(zhǎng)連接雙工單鏈和外部系統(tǒng)角色可分為10中類型:同步短連接,外部系統(tǒng)作為請(qǐng)求方。同步短連接,外部系統(tǒng)作為服務(wù)方。同步長(zhǎng)連接,外部系統(tǒng)作為請(qǐng)求方。同步長(zhǎng)連接,外部系統(tǒng)作為服務(wù)方。異步短連接,外部系統(tǒng)作為請(qǐng)求方。異步短連接,外部系統(tǒng)作為服務(wù)方。異步長(zhǎng)連接單工雙鏈,外部系統(tǒng)作為請(qǐng)求方。異步長(zhǎng)連接單工雙鏈,外部系統(tǒng)作為服務(wù)方。異步長(zhǎng)連接雙工單鏈,外部系

20、統(tǒng)作為請(qǐng)求方。異步長(zhǎng)連接雙工單鏈,外部系統(tǒng)作為服務(wù)方 同步短連接請(qǐng)求方通訊服務(wù)器通訊服務(wù)器循環(huán)偵聽(tīng)TCP/IP請(qǐng)求,當(dāng)請(qǐng)求達(dá)到時(shí)FORK新進(jìn)程,進(jìn)行接收數(shù)據(jù)、發(fā)送到交換引擎處理,從隊(duì)列中接收處理應(yīng)答,通過(guò)TCP/IP原鏈路返回外部通訊系統(tǒng),最后關(guān)閉鏈路并EXIT。同步短連接請(qǐng)求方隊(duì)列服務(wù)器隊(duì)列服務(wù)器循環(huán)從網(wǎng)關(guān)隊(duì)列中,當(dāng)請(qǐng)求達(dá)到時(shí)FORK新進(jìn)程,新進(jìn)程根據(jù)指令字,對(duì)于請(qǐng)求應(yīng)答式通訊,指令字為912348,新進(jìn)程將向外部系統(tǒng)建立鏈路、發(fā)送請(qǐng)求數(shù)據(jù)、接收應(yīng)答數(shù)據(jù)、并斷開(kāi)鏈路,把數(shù)據(jù)通過(guò)隊(duì)列返回給數(shù)據(jù)交換引擎,最后進(jìn)程退出。異步短連接請(qǐng)求方、服務(wù)方異步短連接外部系統(tǒng)作為請(qǐng)求方或服務(wù)方,一般公用同樣的渠

21、道,并且共享發(fā)送通道與接收通道。當(dāng)PB系統(tǒng)作為請(qǐng)求方,外部系統(tǒng)作為服務(wù)方式,數(shù)據(jù)交換引擎需要在發(fā)起端通過(guò)跟蹤碼匹配請(qǐng)求和應(yīng)答報(bào)文。長(zhǎng)連接通訊方式同步長(zhǎng)連接與同步短連接內(nèi)部結(jié)構(gòu)基本一致,差別在于長(zhǎng)連接在初始化階段就建立好鏈路,并一直使用。異步長(zhǎng)連接單工和雙工與異步短連接基本一致,差別在于長(zhǎng)連接單工在初始化階段需要建立好鏈路,并一直使用;對(duì)于長(zhǎng)連接雙工與外部系統(tǒng)的鏈路發(fā)送與接收在同一鏈路。數(shù)據(jù)交換接口接口類型請(qǐng)求渠道的應(yīng)答報(bào)文通過(guò)PBMIDGW發(fā)起的請(qǐng)求應(yīng)答:服務(wù)在交易流程結(jié)束時(shí),從PkgBuff獲取報(bào)文,通過(guò)tpreturn 方式返回應(yīng)答報(bào)文。虛擬網(wǎng)關(guān)發(fā)起的請(qǐng)求沒(méi)有應(yīng)答,服務(wù)在交易流程結(jié)束時(shí),t

22、preturn函數(shù)返回NULL報(bào)文。對(duì)于TCP/IP請(qǐng)求網(wǎng)關(guān),應(yīng)答通過(guò)原子交易Comm_RecvPkg()返回。具體描述見(jiàn)下節(jié)原子交易接口。服務(wù)渠道請(qǐng)求應(yīng)答報(bào)文服務(wù)渠道分為兩種通訊模式,如果是TUXEDO域方式,系統(tǒng)提供原子交易Comm_ExchTuxPkg進(jìn)行,Comm_ExchTuxPkg原子交易同時(shí)完成請(qǐng)求報(bào)文的發(fā)送和應(yīng)答報(bào)文的接收。對(duì)應(yīng)TCP/IP服務(wù)渠道,請(qǐng)求報(bào)文和應(yīng)答報(bào)文分為兩個(gè)原子交易進(jìn)行處理,Comm_SendPkg()發(fā)送請(qǐng)求,Comm_RecvPkg()接收應(yīng)答,統(tǒng)一接口,系統(tǒng)設(shè)置了指令字。具體說(shuō)明見(jiàn)下節(jié)原子交易接口。數(shù)據(jù)交換接口原子交易(一)Comm_SendPkg()參

23、數(shù):參數(shù)為定長(zhǎng),某項(xiàng)位數(shù)不夠則補(bǔ)空格3渠道號(hào):渠道號(hào)為Q時(shí)表示請(qǐng)求渠道。6為命令詞:含義見(jiàn)命令詞一節(jié)說(shuō)明:將指定Buffer的內(nèi)容發(fā)送到隊(duì)列,數(shù)據(jù)到隊(duì)列后,網(wǎng)關(guān)會(huì)收取數(shù)據(jù)并向指定的渠道發(fā)送。調(diào)用前需要生成系統(tǒng)跟蹤碼,系統(tǒng)提供了兩種方式,新生成一個(gè)跟蹤碼,調(diào)用Data_GetTraceCode,或者直接從PB流水號(hào)轉(zhuǎn)換過(guò)來(lái),相應(yīng)的原子交易為Data_ConvTraceCode,作為Comm_RecvPkg()接收?qǐng)?bào)文的匹配ID。數(shù)據(jù)交換接口原子交易(二)Comm_RecvPkg()參數(shù):參數(shù)為定長(zhǎng),某項(xiàng)位數(shù)不夠則補(bǔ)空格接收渠道號(hào) 。說(shuō)明: 網(wǎng)關(guān)接收交易應(yīng)答后,將數(shù)據(jù)發(fā)送到隊(duì)列。接收函數(shù)從隊(duì)列接收

24、數(shù)據(jù)到指定Buffer。Comm_ExchTuxPkg(param)參數(shù):渠道號(hào)|超時(shí)標(biāo)志|服務(wù)名稱渠道號(hào): 三位,目標(biāo)渠道超時(shí)標(biāo)志:0不處理 ;1服務(wù)超時(shí)后,不向請(qǐng)求渠道發(fā)送應(yīng)答,讓請(qǐng)求也渠道超時(shí),一般使用于透明轉(zhuǎn)發(fā);A表示丟棄收到的應(yīng)答包,主要為分行轉(zhuǎn)發(fā)信管交易使用;服務(wù)名:主機(jī)服務(wù)名,缺省從SOP包頭中取,如果服務(wù)名為PBMIDGW*,則系統(tǒng)自動(dòng)增加PBF包頭。說(shuō)明:向Tuxedo服務(wù)方發(fā)送交易請(qǐng)求并接收交易應(yīng)答;根據(jù)超時(shí)標(biāo)志設(shè)置系統(tǒng)回應(yīng)標(biāo)識(shí)位。但調(diào)用總前提供給分前的服務(wù)時(shí)(PBMIDGW或EBIPGW)系統(tǒng)會(huì)自動(dòng)添加前置內(nèi)部數(shù)據(jù)頭TCP/IP網(wǎng)關(guān) 命令詞解釋:指令由六位(6B)組成,第

25、一位:是否應(yīng)答標(biāo)志,0 不需回送應(yīng)答包主控 9 回送應(yīng)答包給主控,二到六位:通訊指令組合。1:建立通訊連接2 :發(fā)送數(shù)據(jù)3 :接收數(shù)據(jù)4 :斷開(kāi)通訊連接8 :無(wú)后續(xù)指令典型指令集同步短連接交易指令 912348 異步長(zhǎng)連接模式發(fā)送指令 928000 異步短連接模式發(fā)送指令 912480 異步長(zhǎng)連接模式發(fā)送指令 028000 異步短連接模式發(fā)送指令 012480 系統(tǒng)日志日志機(jī)制在PB中,日志采用動(dòng)態(tài)機(jī)制,系統(tǒng)運(yùn)行時(shí),可以設(shè)置一個(gè)日志級(jí)別,如果應(yīng)用程序中的日志級(jí)別低于當(dāng)前日志級(jí)別則打印日志信息,否則不打印日志信息。系統(tǒng)目前的日志級(jí)別以供設(shè)置為5級(jí),分別定義了不同的宏。系統(tǒng)運(yùn)行的缺省級(jí)別設(shè)置為3;

26、如果系統(tǒng)運(yùn)行穩(wěn)定,可以設(shè)置級(jí)別為0 。日志級(jí)別的設(shè)置,可以按外部交易碼進(jìn)行設(shè)置。在開(kāi)發(fā)環(huán)境中,另外在測(cè)試環(huán)境中,一般把日志級(jí)別設(shè)置為 4 。#define ERR_LVL 0,_FILE_,_LINE_ /*錯(cuò)誤級(jí)*/#define DATA_LVL 1,_FILE_,_LINE_ /*數(shù)據(jù)級(jí)*/#define DEBUG_LVL0 2,_FILE_,_LINE_ /*常用調(diào)試*/#define DEBUG_LVL1 3,_FILE_,_LINE_ /*運(yùn)行監(jiān)控 -大量信息*/#define DEBUG_TEST 4,_FILE_,_LINE_ /*詳細(xì)調(diào)試 -大量信息*/系統(tǒng)日志日志存儲(chǔ)PB

27、系統(tǒng)的應(yīng)用日志,按文件的方式存儲(chǔ),存放文件的目錄放在log目錄下。交換引擎部分產(chǎn)生的日志文件:按外部交易碼生成不同的日志文件,同時(shí)把文件按渠道存儲(chǔ)在不同的目錄中。TCP/IP網(wǎng)關(guān)產(chǎn)生的日志文件:存放在對(duì)應(yīng)網(wǎng)關(guān)渠道目錄下。TUXEDO網(wǎng)關(guān)產(chǎn)生的日志:存放在LOG目錄下,以pbmidgw_渠道號(hào)命名。進(jìn)行應(yīng)用調(diào)試時(shí),可按系統(tǒng)運(yùn)行的先后次序查找日志,首先確定交易的發(fā)起渠道、網(wǎng)關(guān)類型、外部交易碼。根據(jù)這些信息先查看網(wǎng)關(guān)日志,再查看交換引擎產(chǎn)生的日志,交易流程過(guò)程中如果要到服務(wù)方,還需要查看服務(wù)網(wǎng)關(guān)的日志,這樣可以跟蹤系統(tǒng)的執(zhí)行,發(fā)現(xiàn)程序BUG。例如:要查看柜面系統(tǒng)發(fā)起的交易日志,柜面系統(tǒng)的渠道號(hào)110,假設(shè)外部交易碼是0204,那么首先可以查看$HOME/log/pbmidgw_110.log查看智能網(wǎng)關(guān)是否收到請(qǐng)求,然后查找$HOME/log/110/0204.log查看交換引擎運(yùn)行交易流程時(shí)產(chǎn)生的

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論