基于CICS的中間業(yè)務平臺設計與實現(xiàn)
隨著金融改革的深入,各銀行充分利用網絡優(yōu)勢,通過高科技手段大力開發(fā)跨行業(yè)的中間業(yè)務。目前,中間業(yè)務的種類越來越多,交易量日益增多,在金融業(yè)省域或全國數據大集中的背景下,中間業(yè)務應用系統(tǒng)的負載急劇擴大,銀行聯(lián)機交易系統(tǒng)正面臨著新的問題,一方面對聯(lián)機業(yè)務的數據處理要求穩(wěn)定、高并發(fā)度、高擴展性,另一方面要系統(tǒng)響應時間短,保證安全性,另外還需要在不同硬件平臺、網絡環(huán)境、數據庫之間互操作。為解決這些問題各銀行業(yè)采用先進的計算機技術,改造原有系統(tǒng),如:在聯(lián)機交易設計中引入中間件技術,滿足分布式環(huán)境對于安全性和數據一致性的需求。目前,中間件產品有IBM CICS、0PENTP、BEA TUXED0、CICS Server等。其中IBM CICS在金融、財稅、電信等行業(yè)中已廣泛應用。由于客戶信息控制系統(tǒng)(Custome InformationControl System,簡稱CICS)在聯(lián)機事務處理(0LTP)領域的領先技術及其保證交易完整性和數據一致性的性能,使其成為銀行交易處理解決方案的核心。結合實踐經驗,介紹了一個基于CICS的中間業(yè)務平臺系統(tǒng)的設計方案,重點闡述了該系統(tǒng)軟件框架、功能模塊和技術實現(xiàn)。實驗結果表明,利用CICS中間件解決銀行聯(lián)機交易系統(tǒng)的問題是行之有效的。
2 CICS技術簡介
CICS作為一種交易巾問件,為IBM和非IBM平臺上的應用提供聯(lián)機事務處理和事務管理的產品,其功能是為商業(yè)應用提供一個事務處理環(huán)境。CICS可為應用程序的開發(fā)、通信、恢復、顯示、數據管理、安全性和內部通信等提供多項服務。其結構設計也是面向事務處理的,它構建的是一個三層次結構的應用系統(tǒng),有效地區(qū)分應用系統(tǒng)中的表述邏輯層、業(yè)務邏輯層和數據邏輯層,從而使應用系統(tǒng)結構清晰,維護簡單易行。
CICS由客戶端發(fā)起交易請求,把需要調用的服務器程序名和數據通過通訊存儲區(qū)傳給服務器程序,CICS則在服務端喚起相應的服務程序,并在第一個可用的應用服務器(AS)進程的緩存中運行,最后把結果通過通訊存儲區(qū)返回到客戶端。當交易運行失敗時,無論數據分布在何地,CICS對數據的修改都會自動回滾,這即保證了數據的一致性。
3 基于CICS的銀行中間業(yè)務平臺設計與實現(xiàn)
3.1 系統(tǒng)設計
銀行中間業(yè)務平臺指各銀行中間業(yè)務產品的開發(fā)、運行和管理平臺,它處于銀行核心系統(tǒng)與周邊渠道及第三方系統(tǒng)之間.主要實現(xiàn)銀行中間業(yè)務各業(yè)務流程,是一個兼顧傳統(tǒng)業(yè)務的多渠道服務計算機技術平臺,也是多個系統(tǒng)間交易的組織者。在此,提出了基于中間業(yè)務平臺的解決方案。圖l給出整個系統(tǒng)結構。它由CITE交易請求模塊、中間業(yè)務平臺模塊、通訊前置模塊、后臺管理模塊組成。
3.1.1交易發(fā)起端(CTTE)
CITE指銀行的前臺柜面,由銀行的柜員發(fā)起交易。在前臺開發(fā)了多個CITE終端交易腳本,通過交易腳本的運行,向操作柜員提供交易的輸入和輸出界面,實現(xiàn)交易的預處理功能和打印功能。CITE發(fā)給第三方的請求首先要與BICE進行聯(lián)接,CITE建立連接的程序代碼如下:
3.1.2 中間業(yè)務平臺子系統(tǒng)
中間業(yè)務平臺子系統(tǒng)是整個系統(tǒng)的開發(fā)核心,也是交易的業(yè)務邏輯處理運行平臺。它充分利用了CICS所具備的交易并發(fā)控制、全局事務控制、資源調度管理、通信連接機制、靈活的軟件開發(fā)、強大的分布式交易處理、標準的XA數據庫訪問協(xié)議等功
能,為中間業(yè)務應用提供一個集成處理的開發(fā)和運行框架,既創(chuàng)造了一個高效、方便的開發(fā)環(huán)境,也克服了系統(tǒng)穩(wěn)定性不夠,對外連接不方便和功能單薄等問題。系統(tǒng)與CITE終端之間采用新的NATP通訊協(xié)議,柜面發(fā)起的交易由BICE接收,重新打包,在接收數據前加上系統(tǒng)標識和請求數據長度后,轉發(fā)給CICS客戶端程序,由它調用CICS服務程序。C3CS主控模塊根據系統(tǒng)標識,讀取系統(tǒng)配置表和交易定義表,完成對數據包的報文格式轉換,業(yè)務流程處理,數據交換和日志記錄等處理。
基于中間業(yè)務平臺的一個完整交易包括網點柜臺、網上銀行、電話銀行發(fā)起交易請求,將查詢和繳費報文上送中間業(yè)務平臺。CICS則在服務端喚起相應的服務程序,并在第一個可用的應用服務器(AS)進程的,緩存中運行,根據繳費類型(現(xiàn)金和轉帳)判斷是否上大機作轉帳處理。若為現(xiàn)金,將繳費數據第三方完成繳費工作;若為轉帳,先上大機進行轉帳處理,轉帳成功,將繳費數據發(fā)往第三方完成繳費。繳費完成后,將信息發(fā)回發(fā)起方。系統(tǒng)通過中間業(yè)務平臺與第三方進行數據交換。柜員通過柜面查詢打印各類報表。報表服務器從中間業(yè)務平臺數據庫直接產生所需各類報表。
3.1.3 通訊前置子系統(tǒng)(BICE)
BICE模塊為中間業(yè)務系統(tǒng)提供接入和外連服務,實現(xiàn)整個平臺系統(tǒng)的集成化通訊接入,解決多個系統(tǒng)(如中間業(yè)務系統(tǒng)與第三方外接系統(tǒng)、中間業(yè)務系統(tǒng)與終端系統(tǒng))間互連時所面臨的各種問題及需求,包括數據報文轉換;支持集群部署和負載均衡;提高通訊連接以及處理效率;支持路由功能;降低系統(tǒng)間的耦合度等,并且成為銀行各應用系統(tǒng)間、應用系統(tǒng)與第三方系統(tǒng)間互聯(lián)以及整合的樞紐。
3.1.4 后臺管理子系統(tǒng)
后臺管理子系統(tǒng)可保證系統(tǒng)數據傳輸的完整性,并為管理員或操作員提供通訊進程監(jiān)控、數據備份以及恢復機制等功能。
3.2 系統(tǒng)網絡結構
整合系統(tǒng)分為C/S多層結構,如圖2所示。
3.2.1 通訊接入層
專門用于處理來自前臺或外部系統(tǒng)的交易請求,然后通過CICS客戶端與后臺處理程序連接,可采用多臺PC服務器來承擔,一方面可按不同的應用分類接入,另一方面可實現(xiàn)通訊負載均衡。
3.2.2 中間層
業(yè)務數據的邏輯處理分為系統(tǒng)控制層和業(yè)務處理層。前者負責完成系統(tǒng)控制,重要核算工具管理和交易調度,并利用CICS統(tǒng)一進行聯(lián)機交易的事務管理;后者負責完成各應用系統(tǒng)的交易處理。中間層與界面層通過交易輸入區(qū)(TIA)和交易輸出區(qū)(TOA)實現(xiàn)數據交換,而中間層中各模塊間通過CICS的交易工作區(qū)(TWA)實現(xiàn)數據交換,它與數據服務層間的操作接口是ESOL/C,與數據服務層在CICS的控制下協(xié)同完成事務管理功能。
3.2.3 數據服務
數據服務負責數據資源的管理即對數據庫服務器的操作和數據存儲。采用這種結構,可充分發(fā)揮機器性能,減少設備的閑置,同時可以對某些子系統(tǒng)的局部故障進行封閉,以防止造成整個系統(tǒng)的崩潰。系統(tǒng)采用三臺中間業(yè)務處理主機,三臺主機使用一個數據庫服務器,為了節(jié)省設備,將中間業(yè)務平臺1號機兼作數據庫服務器,1號機運行總行中間業(yè)務應用,同時兼作數據庫服務器;2號機作l號機的備份,平時運行銀行的特色中間業(yè)務;3號機運行銀行的新的特色中間業(yè)務和應用。通訊接入采用集群部署方案,兩臺通訊前置機同時工作,通過均衡負載器自動進行通訊壓力分解及故障切換。
4 結語
隨著中國金融改革的發(fā)展,目前中間件技術在金融交易系統(tǒng)中的應用日益普及,但是提高金融交易服務器的負荷能力和系統(tǒng)資源的利用率,已成為金融系統(tǒng)面臨的一個重要問題。針對這些問題,通過實踐摸索,設計開發(fā)了基于CICS的中間業(yè)務平臺系統(tǒng),該系統(tǒng)采用IBM CICS技術使銀行聯(lián)機交易系統(tǒng)更安全、易維護、易擴展,達到金融系統(tǒng)交易要求。