《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于SOA的企業(yè)服務(wù)總線在銀行系統(tǒng)集成中的應(yīng)用
基于SOA的企業(yè)服務(wù)總線在銀行系統(tǒng)集成中的應(yīng)用
來源:微型機(jī)與應(yīng)用2012年第14期
王 建1, 江 婷2
(1. 上海應(yīng)用技術(shù)學(xué)院, 上海 201418; 2. 上海南洋高科技有限公司, 上海201400)
摘要: 詳細(xì)地論述SOA及企業(yè)服務(wù)總線的基本概念、工作原理,借助IBM消息中間件MQ和總線產(chǎn)品MB為商業(yè)銀行分析設(shè)計(jì)出面向服務(wù)架構(gòu)的企業(yè)服務(wù)總線,打造一個隨需而變的銀行SOA企業(yè)應(yīng)用平臺,以應(yīng)對不斷變化的市場環(huán)境和用戶需求。
Abstract:
Key words :

摘   要: 詳細(xì)地論述SOA及企業(yè)服務(wù)總線的基本概念、工作原理,借助IBM消息中間件MQ和總線產(chǎn)品MB為商業(yè)銀行分析設(shè)計(jì)出面向服務(wù)架構(gòu)的企業(yè)服務(wù)總線,打造一個隨需而變的銀行SOA企業(yè)應(yīng)用平臺,以應(yīng)對不斷變化的市場環(huán)境和用戶需求。
關(guān)鍵詞: 面向服務(wù)架構(gòu); 企業(yè)服務(wù)總線; 集成

 目前,我國銀行建設(shè)處于快速發(fā)展期,銀行業(yè)務(wù)不斷更新,銀行客戶對服務(wù)質(zhì)量的要求也不斷提高,銀行與客戶之間的關(guān)系將由單純的買賣關(guān)系逐漸向復(fù)雜的服務(wù)關(guān)系轉(zhuǎn)變。隨著銀行服務(wù)功能的增多以及銀行客戶需求的不斷變化,許多銀行通過增加各種渠道來拓寬自己的市場。然而,零售銀行多渠道趨勢雖然豐富了銀行的渠道供給和服務(wù)品質(zhì),但同時也給銀行和客戶雙方帶來了產(chǎn)品之外的渠道問題,更給現(xiàn)有銀行的IT架構(gòu)帶來了新的問題和挑戰(zhàn)??蛻粼谑褂勉y行多渠道產(chǎn)品時往往會碰到一系列的問題,比如:
 (1)渠道之間信息不共享。某客戶開通銀行賬戶時,已經(jīng)填寫了個人信息,但是在網(wǎng)上開通時還是要求該用戶輸入很多重復(fù)的個人信息。
?。?)渠道之間沒有很好的連貫性。某客戶丟失了信用卡,第一時間通過網(wǎng)上銀行進(jìn)行了信用卡掛失操作后,緊接著打電話向銀行說明,可是卻發(fā)現(xiàn)該客戶并沒有掛失操作,因?yàn)殂y行客服人員不知道如何在網(wǎng)上銀行渠道上進(jìn)行業(yè)務(wù)操作。
?。?)渠道之間的數(shù)據(jù)信息缺乏一致性。某客戶在自動存款機(jī)上往個人賬戶存款人民幣一千元,提示存款操作成功,但是查詢賬戶余額,卻發(fā)現(xiàn)個人銀行賬戶里還是原來的一百元。
 針對這些問題和挑戰(zhàn),銀行業(yè)需要對原有的業(yè)務(wù)渠道進(jìn)行重新整合。近年來風(fēng)靡全球的面向服務(wù)架構(gòu)SOA (Service-Oriented Architecture)提供了解決之道——其不考慮平臺和開發(fā)環(huán)境的差異,能實(shí)現(xiàn)銀行現(xiàn)有各業(yè)務(wù)模塊的重用,并將這些系統(tǒng)有機(jī)地整合以實(shí)現(xiàn)信息的共享和交互,使之成為一個靈活、開放、高效和可靠的系統(tǒng)。此系統(tǒng)全面整合前端渠道、中間業(yè)務(wù)平臺和各個業(yè)務(wù)系統(tǒng)子模塊,不僅可以解決當(dāng)前銀行IT系統(tǒng)更新?lián)Q代問題,而且也符合銀行業(yè)務(wù)未來的發(fā)展需求。
1 面向服務(wù)架構(gòu)、企業(yè)服務(wù)總線
1.1面向服務(wù)架構(gòu)

    維基百科將面向服務(wù)的架構(gòu)解釋為:它是一種軟件架構(gòu)的概念,定義了通過使用各種各樣的服務(wù)來滿足軟件用戶不斷變化的需求。在面向服務(wù)的架構(gòu)環(huán)境中網(wǎng)絡(luò)上的結(jié)點(diǎn)通過服務(wù)的形式向外部提供資源,其他結(jié)點(diǎn)就可以用標(biāo)準(zhǔn)的方式來訪問[1]。
 Gartner公司認(rèn)定面向服務(wù)的架構(gòu)為:它體現(xiàn)客戶端/服務(wù)器的軟件架構(gòu)思想,但它的客戶端/服務(wù)器顯著區(qū)別在于它重視整個系統(tǒng)中組件之間松散耦合[2]。
    從上述的這些定義中不難看出:面向服務(wù)的架構(gòu)是組織服務(wù)的一種架構(gòu)模式,支持面向服務(wù)的特征。面向服務(wù)的架構(gòu)主要包括應(yīng)用程序前端、服務(wù)、服務(wù)存儲庫和服務(wù)總線四部分,其關(guān)系如圖1所示[3]。應(yīng)用程序前端相當(dāng)于客戶端,它初始化面向服務(wù)的架構(gòu)的應(yīng)用。服務(wù)則包括服務(wù)合同、服務(wù)實(shí)現(xiàn)和服務(wù)接口,而服務(wù)實(shí)現(xiàn)又包括業(yè)務(wù)邏輯和數(shù)據(jù)。服務(wù)儲存庫則是存儲服務(wù)的地方,同時也提供了各種發(fā)現(xiàn)的機(jī)制,以快速地定位所需要的服務(wù)。服務(wù)總線則提供了服務(wù)之間通信的基礎(chǔ)架構(gòu),它提供了各種通信的可能,屏蔽了技術(shù)和平臺之間的差異,同時也提供了一些基礎(chǔ)服務(wù)。

1.2 企業(yè)服務(wù)總線
 企業(yè)服務(wù)總線ESB(Enterprise Service Bus)就是在特定環(huán)境下,即SOA架構(gòu)中,實(shí)施EAI的一種方式。其實(shí),企業(yè)服務(wù)總線是傳統(tǒng)中間件技術(shù)與XML、Web服務(wù)等技術(shù)結(jié)合的產(chǎn)物。ESB是一種在松散耦合的服務(wù)與應(yīng)用之間標(biāo)準(zhǔn)的集成方式,它提供了網(wǎng)絡(luò)中最基本的中樞,是構(gòu)筑企業(yè)神經(jīng)系統(tǒng)的必要元素[4-5]。
    企業(yè)服務(wù)總線運(yùn)用SOA松耦合的思想對企業(yè)運(yùn)用進(jìn)行集成,借助靈活的服務(wù)接口和易用的Adapter為企業(yè)應(yīng)用創(chuàng)建一個統(tǒng)一的平臺,方便SOA應(yīng)用和遺留系統(tǒng)的集成,同時其強(qiáng)大的可擴(kuò)展性也顯露無疑,其架構(gòu)如圖2所示。

 從物理角度來看,企業(yè)服務(wù)總線是使用Web服務(wù)、消息中間件、智能路由和格式轉(zhuǎn)換的架構(gòu);從邏輯角度來看,企業(yè)服務(wù)總線與SOA架構(gòu)的原則相一致,并給出了如何更好地管理服務(wù)的解決辦法,以及在分布式環(huán)境中如何很好地進(jìn)行服務(wù)交互的功能。企業(yè)服務(wù)總線采用分級的層次結(jié)構(gòu),用來連接不同業(yè)務(wù)領(lǐng)域的客戶群[6]。
1.3 面向服務(wù)架構(gòu)與企業(yè)服務(wù)總線關(guān)系
 隨著SOA技術(shù)的發(fā)展,企業(yè)服務(wù)總線的應(yīng)用也變得更加廣泛。在SOA的架構(gòu)體系中,ESB被看作是整合企業(yè)中各種異構(gòu)軟件的一個集成平臺,是服務(wù)提供者及消費(fèi)者的媒介,所提供的服務(wù)具有中介作用。
 企業(yè)服務(wù)總線作為面向服務(wù)架構(gòu)體系的整合平臺,被看作是整個系統(tǒng)架構(gòu)中的核心部分。企業(yè)服務(wù)總線和面向服務(wù)架構(gòu)是相輔相成的,沒有所謂的一方重要,另一方次要,二者都是很重要的。只有有了企業(yè)服務(wù)總線,面向服務(wù)架構(gòu)才能釋放它的最大價值,從而使二者的功能發(fā)揮到最佳狀態(tài)。
2 企業(yè)服務(wù)總線分析和設(shè)計(jì)
2.1開發(fā)平臺介紹

 IBM消息中間件產(chǎn)品WebSphere Message Queue具有統(tǒng)一的標(biāo)準(zhǔn)、高穩(wěn)定性和高安全性等特性。WebSphere Message Queue中的主要操作對象是消息和隊(duì)列。它借助在相異的子系統(tǒng)中不斷流動的消息,來高效地實(shí)現(xiàn)對各個子系統(tǒng)的串聯(lián),充分利用各個松散耦合的子系統(tǒng)向外面暴露的功能,從而完成某個商業(yè)應(yīng)用的整個工作流程[7]。
 IBM業(yè)務(wù)集成中間件產(chǎn)品WebSphere Message Broker,是一種“企業(yè)服務(wù)總線”產(chǎn)品,采用MQ作為內(nèi)部通信機(jī)制,支持各種應(yīng)用接口和網(wǎng)絡(luò)協(xié)議,為企業(yè)應(yīng)用提供豐富多樣的接入方式。同時,通過方便快捷的編程方式來提供消息路由、格式轉(zhuǎn)換和服務(wù)封裝等功能,更重要的是為企業(yè)系統(tǒng)的應(yīng)用互連提供方便、高效和安全的平臺[8]。
2.2 企業(yè)服務(wù)總線在銀行系統(tǒng)架構(gòu)中的地位
     為了實(shí)現(xiàn)對銀行業(yè)務(wù)多渠道整合,將企業(yè)服務(wù)總線在整個銀行IT集成系統(tǒng)中設(shè)計(jì)兩層。頂層的ESB用于整合銀行的交易記錄,連接銀行內(nèi)部和外部網(wǎng)絡(luò);底層的ESB用于整合銀行系統(tǒng)數(shù)據(jù)庫中的所有數(shù)據(jù),它與銀行的信息管理系統(tǒng)、信息倉庫及分析決策系統(tǒng)連接;當(dāng)然,為了以后業(yè)務(wù)的拓展,ESB要與銀行的其他系統(tǒng)相連。銀行IT系統(tǒng)集成整體框架圖如圖3所示。

 

 

    低層通信則是采用IBM公司生產(chǎn)的消息中間件WebSphere系列的WebSphere Message Queue來實(shí)現(xiàn)消息之間的通信。不同機(jī)器上的不同隊(duì)列管理器之間建立傳輸隊(duì)列、發(fā)送通道、接收通道實(shí)現(xiàn)互連通信,其企業(yè)服務(wù)總線運(yùn)行示意圖如4所示。
2.3企業(yè)服務(wù)總線在銀行系統(tǒng)架構(gòu)中的功能
    銀行IT系統(tǒng)集成中的企業(yè)服務(wù)總線包括請求與響應(yīng)方報(bào)文校驗(yàn)、交易動態(tài)路由、請求與響應(yīng)方協(xié)議轉(zhuǎn)換、共享緩存、交易異常處理、請求與響應(yīng)方編碼轉(zhuǎn)換、交易日志管理、請求方訪問控制、交易超時控制、文件傳輸?shù)裙δ苣K,具體如圖5所示。

2.4 企業(yè)服務(wù)總線的實(shí)現(xiàn)
    根據(jù)系統(tǒng)功能模塊的設(shè)計(jì),系統(tǒng)功能模塊通過三條消息流具體實(shí)現(xiàn)。第一條消息流是服務(wù)請求者發(fā)出SOAP請求消息接收、處理,最后動態(tài)路由到相應(yīng)的服務(wù)提供端;第二條消息流是對服務(wù)提供者處理完后的相應(yīng)消息進(jìn)行接收、處理,最后動態(tài)路由到相應(yīng)的服務(wù)請求者;第三條消息流是當(dāng)服務(wù)提供端向注冊庫中發(fā)布新的服務(wù)后,該消息流會被觸發(fā),自動刷新緩沖存儲器中的相應(yīng)配置信息。整體消息流結(jié)點(diǎn)部署如圖6所示。

    通過開發(fā)部署企業(yè)服務(wù)總線,銀行IT部門可以快速地、最大程度地重用現(xiàn)有子系統(tǒng)資源,既節(jié)省了開發(fā)時間,又省去了大量的費(fèi)用,面對市場客戶不斷變化的需求和IT業(yè)界技術(shù)更新,行內(nèi)整個IT系統(tǒng)也能應(yīng)對自如、隨需而變。目前,該系統(tǒng)已經(jīng)完成各種測試和部署,整體運(yùn)行良好,受到客戶的好評。面對國內(nèi)許多大中小型企業(yè)內(nèi)部IT系統(tǒng)的現(xiàn)狀,該理念和技術(shù)非常具有實(shí)際意義和推廣價值。
參考文獻(xiàn)
[1] 陳宇翔.精通WebSphere MQ[M].合肥:安徽科學(xué)技術(shù)出版社,2004.
[2] 甘荃,婁麗軍. IBM WebSphere MQ基礎(chǔ)教程[M]. 北京:電子工業(yè)出版社,2004.
[3] 張寶珠. 基于面向服務(wù)架構(gòu)的應(yīng)用集成研究天津[D].天津:理工大學(xué), 2008.
[4] 趙亮,史維峰.基于SOA的企業(yè)服務(wù)總線技術(shù)研究與應(yīng)用[J].計(jì)算機(jī)應(yīng)用與軟件,2009,26(5):123-124,141.
[5] 牛剛,張忠能.輕量級ESB研究與設(shè)計(jì)[J]. 微型電腦應(yīng)用,2009,25(2):14-16.
[6] 丁昭華.基于ESB的企業(yè)應(yīng)用集成技術(shù)研究與應(yīng)用[D].長沙:中南大學(xué),2007.
[7] 李珉.ESB企業(yè)服務(wù)總線解決方案剖析[EB/OL].(2006-12-xx)http://tech.51cto.com/art/200612/36357.htm.
[8] 蔡昭權(quán).基于ESB的異構(gòu)系統(tǒng)集成實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用,2008,28(2):38-54.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。