吳小娥 劉萍萍
摘要:在信息化技術(shù)快速更新發(fā)展的趨勢下,企業(yè)信息化程度與水平也逐漸明顯提升,在此過程中,必然會產(chǎn)生各式各樣的信息孤島,而面對越來越繁雜的信息化狀態(tài),企業(yè)應(yīng)用集成技術(shù)開始備受重視。從而衍生的基于服務(wù)架構(gòu)(SOA)的第三代分布式模式,明確指出完善的封裝與簡潔的接口,能夠大大降低應(yīng)用系統(tǒng)的耦合度,實(shí)現(xiàn)系統(tǒng)與接口的分割,以助于企業(yè)能夠快速適應(yīng)不斷變化的新形勢。作為構(gòu)造分布式系統(tǒng)的主要方法,SOA通過服務(wù)形式為用戶提供業(yè)務(wù)應(yīng)用功能,構(gòu)造完善的基于服務(wù)為核心的架構(gòu),從而很大程度上提高其復(fù)用性,進(jìn)而實(shí)現(xiàn)了數(shù)據(jù)信息共享。企業(yè)服務(wù)總線(ESB)整合技術(shù)在SOA企業(yè)信息化構(gòu)建中,發(fā)揮著橋梁作用,主要作用是協(xié)調(diào)獨(dú)立應(yīng)用系統(tǒng)間的數(shù)據(jù),以實(shí)現(xiàn)交換與共享。
關(guān)鍵詞:SOA;ESB;服務(wù)總線技術(shù);企業(yè)應(yīng)用
中圖分類號:TP3 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2019)06-0034-02
1 SOA概述
SOA實(shí)際上是一個(gè)組件模型,把應(yīng)用程序的不同功能單元基于服務(wù)間定義良好的接口與契約有機(jī)聯(lián)系起來。所謂接口是通過中立的方式加以定義,其能夠獨(dú)立實(shí)現(xiàn)服務(wù)的硬件平臺、操作系統(tǒng)、編程語言,從而促使構(gòu)建在各種系統(tǒng)的服務(wù)可以通過統(tǒng)一與通用的模式實(shí)現(xiàn)有機(jī)交互。SOA是整合各種服務(wù)的結(jié)構(gòu)平臺,其本質(zhì)在于通過核心服務(wù)技術(shù)集中管理平臺,實(shí)現(xiàn)對所有服務(wù)的匯總。以SOA為基礎(chǔ)的WEB系統(tǒng)技術(shù)架構(gòu)具體如圖1所示。
2 企業(yè)服務(wù)總線ESB
ESB就是企業(yè)服務(wù)總線,其把傳統(tǒng)中間件技術(shù)與WEB、XML服務(wù)等技術(shù)有機(jī)結(jié)合起來,以此構(gòu)成相應(yīng)產(chǎn)物,就企業(yè)神經(jīng)系統(tǒng)構(gòu)建而言,ESB是不可或缺的主要元素,而且也是網(wǎng)絡(luò)最基本的連接載體。與傳統(tǒng)軟件架構(gòu)比較分析,ESB具有其自身的獨(dú)特優(yōu)勢,即解決方案的成本相對較低;能夠切實(shí)消除不同應(yīng)用間的技術(shù)差異,進(jìn)一步實(shí)現(xiàn)了應(yīng)用兼容性的提高,有助于各種服務(wù)間的有效通信與整合。ESB體系架構(gòu)具體如圖2所示。
基于功能角度,ESB處理模式是以事件驅(qū)動與文檔導(dǎo)向?yàn)檩d體的,所采取的運(yùn)行管理機(jī)制是分布式的,其支持以內(nèi)容為基礎(chǔ)的過濾與路由,能夠提供標(biāo)準(zhǔn)化與規(guī)范化接口,而且數(shù)據(jù)傳輸能力十分突出。ESB通過總線形式,實(shí)現(xiàn)了各種應(yīng)用系統(tǒng)間的有機(jī)通信,屬于新興集成方式。不同于集線器集成、點(diǎn)對點(diǎn)集成等傳統(tǒng)集成模式,ESB具備突出性優(yōu)勢。
2.1 基于標(biāo)準(zhǔn)與開放的整合技術(shù)
ESB支持WEB Services系列協(xié)議與規(guī)范,在SOA中占據(jù)著核心環(huán)節(jié),并且基于支持JCA、JMS、SOAP等標(biāo)準(zhǔn),能夠促使ESB有效整合企業(yè)與合作伙伴的相關(guān)應(yīng)用,以異構(gòu)性角度為出發(fā)點(diǎn),集成系統(tǒng)得以簡潔化。通過這些開放式標(biāo)準(zhǔn),可以適度忽略版本與API的變化,防止傳統(tǒng)集成中間件的缺陷,這樣,盡管版本或服務(wù)發(fā)生變化,另一端服務(wù)代碼也不需要隨之變化,如此一來,既實(shí)現(xiàn)了工作環(huán)節(jié)與流程的簡化,又有利于服務(wù)重用與替換得以實(shí)現(xiàn)。
2.2 基于事件驅(qū)動的服務(wù)流程
通過消息通信總線實(shí)現(xiàn)松散耦合服務(wù)與應(yīng)用之間事件的順利傳播,實(shí)施有效轉(zhuǎn)換與路由,并利用服務(wù)接口,以全面存儲數(shù)據(jù)信息,為有序完成業(yè)務(wù)流程奠定堅(jiān)實(shí)的基礎(chǔ)。因?yàn)楝F(xiàn)實(shí)世界中所耗費(fèi)的業(yè)務(wù)處理時(shí)間比較長,過程多元化也十分繁雜,所以,以事件驅(qū)動為載體的服務(wù)流程機(jī)制,有助于把企業(yè)異步商業(yè)流程匯總整理成為基于消息、事件、服務(wù)的信息傳遞與呼叫模式。
2.3 集成更加簡單,價(jià)格相對偏低
ESB技術(shù)在集成市場的應(yīng)用十分廣泛,也將會在應(yīng)用市場得到大力推廣,這主要是由于ESB技術(shù)具備顯著的成本優(yōu)勢。傳統(tǒng)集成服務(wù)器太過龐大,升級優(yōu)化需要耗費(fèi)大量人力、物力與財(cái)力,但是,ESB是以網(wǎng)絡(luò)為基礎(chǔ)的,其不僅輕便簡潔,而且升級優(yōu)化相對簡單,大大節(jié)約了企業(yè)應(yīng)用集成的成本。目前,Service Mix、Celtix、Mule等各種開源ESB,在金融等各個(gè)領(lǐng)域?qū)崿F(xiàn)了廣泛應(yīng)用,并且凸顯出了其成本優(yōu)勢。另外,ESB的有效利用,還在很大程度上降低了企業(yè)培訓(xùn)與管理成本,對于既有投資來說是一種保護(hù),有助于企業(yè)既有IT資產(chǎn)作用與功能的充分發(fā)揮。
3 企業(yè)服務(wù)總線在應(yīng)用集成過程中的作用
企業(yè)服務(wù)總線的本質(zhì)就是服務(wù)性載體,以實(shí)現(xiàn)用戶、ESB服務(wù)代理、服務(wù)提供者間的有效銜接,能夠促使信息系統(tǒng)研發(fā)的不同模式軟件模塊通過業(yè)務(wù)處理交互服務(wù)、業(yè)務(wù)過程服務(wù)、信息服務(wù)、業(yè)務(wù)應(yīng)用服務(wù)、業(yè)務(wù)數(shù)據(jù)訪問服務(wù)等各種標(biāo)準(zhǔn)形式注冊并與總線相連接。企業(yè)服務(wù)總線既能夠聯(lián)系企業(yè)內(nèi)部不同或相互獨(dú)立的軟件,并在應(yīng)用集成中,不會對應(yīng)用軟件造成影響。企業(yè)服務(wù)總線構(gòu)成了企業(yè)IT服務(wù)資源,為后續(xù)開發(fā)奠定了堅(jiān)實(shí)的基礎(chǔ),把不同服務(wù)組合重組構(gòu)成了新型服務(wù)或軟件系統(tǒng)。基于構(gòu)建服務(wù)總線,在很大程度上為企業(yè)信息資源整合集成提供了更多元化的技術(shù)實(shí)現(xiàn)途徑。
4 基于Mule ESB的實(shí)踐系統(tǒng)集成
開源Mule是以ESB架構(gòu)理念為基礎(chǔ)的消息平臺,是基于Java的輕量級消息框架與匯總平臺。其中,Service Component是其核心組件,其他組件主要包括執(zhí)行消息輸入、輸出、應(yīng)用邏輯。而服務(wù)組件輸入與輸出則是以End Point為載體加以簡單化配置便可以,并不承擔(dān)轉(zhuǎn)換消息格式的責(zé)任,而消息格式轉(zhuǎn)換主要是通過轉(zhuǎn)換器,并依據(jù)集成應(yīng)用系統(tǒng)與服務(wù)組件需要進(jìn)行動態(tài)完善。傳輸管道的任務(wù)是進(jìn)行不同協(xié)議格式數(shù)據(jù)的有效傳輸,支持多種傳輸協(xié)議。Mule十分重視靈活性與有效性。就此設(shè)計(jì)理念,切實(shí)結(jié)合以開源Mule ESB為基礎(chǔ)的EAI架構(gòu),從而實(shí)現(xiàn)企業(yè)局部業(yè)務(wù)系統(tǒng)的數(shù)據(jù)交換與共享。
4.1 系統(tǒng)架構(gòu)
在企業(yè)信息化構(gòu)建的具體過程中,選用Mule ESB能夠進(jìn)一步交換、同步并共享業(yè)務(wù)系統(tǒng)的相關(guān)數(shù)據(jù)信息,并把數(shù)據(jù)處理操作構(gòu)建成服務(wù),及時(shí)在Mule ESB中進(jìn)行注冊。業(yè)務(wù)數(shù)據(jù)庫對于數(shù)據(jù)而言是主要來源,數(shù)據(jù)的緩存交換系統(tǒng)中,存儲著標(biāo)準(zhǔn)化之后的數(shù)據(jù)結(jié)構(gòu)與數(shù)據(jù)信息。
4.2 數(shù)據(jù)交換過程
業(yè)務(wù)系統(tǒng)的任務(wù)是維護(hù)企業(yè)標(biāo)準(zhǔn)數(shù)據(jù)格式,基于Mule將變化數(shù)據(jù)傳輸?shù)綌?shù)據(jù)緩存交換系統(tǒng)中去,再經(jīng)過此系統(tǒng)以Mule為載體發(fā)布變更的數(shù)據(jù)信息,其他需要此信息的系統(tǒng)根據(jù)自身需求及時(shí)接收數(shù)據(jù),并對數(shù)據(jù)庫進(jìn)行實(shí)時(shí)更新,從而保證業(yè)務(wù)系統(tǒng)中數(shù)據(jù)的唯一性與真實(shí)性。想要適度降低耦合性,提高靈敏性,應(yīng)劃分Mule ESB數(shù)據(jù)交換與同步工作為四大環(huán)節(jié),即導(dǎo)入、處理、分發(fā)、導(dǎo)出。具體交換過程為:在業(yè)務(wù)系統(tǒng)數(shù)據(jù)變化的時(shí)候,以觸發(fā)WEB Service為載體將數(shù)據(jù)及時(shí)導(dǎo)入到增量表中;在Mule觸發(fā)組件輸入與輸出的時(shí)候,適當(dāng)處理數(shù)據(jù);在處理之后,數(shù)據(jù)進(jìn)入數(shù)據(jù)緩存交換系統(tǒng)中去,需要分發(fā)的數(shù)據(jù)也以調(diào)用服務(wù)的模式,先行存儲到數(shù)據(jù)交換區(qū);數(shù)據(jù)交換區(qū)和Mule服務(wù)組件之間協(xié)作,進(jìn)行導(dǎo)出與同步。
4.3 數(shù)據(jù)服務(wù)
數(shù)據(jù)緩存交換系統(tǒng)為業(yè)務(wù)系統(tǒng)提供的數(shù)據(jù)信息,傳輸給WEB Service,使得其有效調(diào)用,在處理錄入信息之后,傳輸給數(shù)據(jù)庫緩存交換的數(shù)據(jù)庫。此模式能夠確保數(shù)據(jù)緩存交換系統(tǒng)中儲存數(shù)據(jù)的安全性與可靠性,促使數(shù)據(jù)緩存交換的數(shù)據(jù)信息結(jié)構(gòu)在很對業(yè)務(wù)系統(tǒng)的時(shí)候,更加透明化,并且系統(tǒng)的耦合度非常低,根本不需以業(yè)務(wù)系統(tǒng)數(shù)據(jù)結(jié)構(gòu)為載體,只需要通過WEB Service接口便可以完成。遵循相關(guān)業(yè)務(wù)配置進(jìn)行數(shù)據(jù)處理的同步規(guī)則,系統(tǒng)能夠?qū)崿F(xiàn)其與多業(yè)務(wù)系統(tǒng)的數(shù)據(jù)分擔(dān)。
5 結(jié)語
總而言之,在ESB更新發(fā)展與企業(yè)信息化構(gòu)建進(jìn)程不斷加快的趨勢下,ESB為企業(yè)提供了開放式、可伸縮的集成化平臺,其中融入了SOA與WEB Service理念,通過低成本,快速實(shí)現(xiàn)了靈活集成,最大程度上提高了業(yè)務(wù)回收效益,成為企業(yè)實(shí)現(xiàn)應(yīng)用系統(tǒng)信息化集成的重要實(shí)施方案。而通過SOA-ESB服務(wù)總線技術(shù)在企業(yè)應(yīng)用中的實(shí)踐應(yīng)用可知,其實(shí)現(xiàn)了數(shù)據(jù)交換與同步的基礎(chǔ)性應(yīng)用,并獲得了良好的突出效果。
參考文獻(xiàn):
[1] 劉濤,侯秀萍.基于ESB的SOA架構(gòu)的企業(yè)應(yīng)用研究[J].計(jì)算機(jī)技術(shù)與發(fā)展,2010,20(5):230-233.
[2] 王洋.企業(yè)服務(wù)總線關(guān)鍵技術(shù)的研究與實(shí)現(xiàn)[D].東北大學(xué),2010.
[3] 曹中洪,廉東本.面向SOA的企業(yè)服務(wù)總線研究與應(yīng)用[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2010,19(10):63-67.
[4] 李梓,楊斌.企業(yè)服務(wù)總線技術(shù)(ESB)在大型企業(yè)中的應(yīng)用[J].信息技術(shù),2013(2):146-147.
【通聯(lián)編輯:張薇】