企業(yè)服務(wù)總線的基本概念_第1頁
企業(yè)服務(wù)總線的基本概念_第2頁
企業(yè)服務(wù)總線的基本概念_第3頁
企業(yè)服務(wù)總線的基本概念_第4頁
企業(yè)服務(wù)總線的基本概念_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

引言“一切都在流淌,沒有什么是長久的。一切都在溶化,沒有什么是固定不變的“-赫拉克利特(Heracleitus)2022SOA人樂此不疲的發(fā)表各自對SOASOA已經(jīng)成為ITSOAGartner202260%的企業(yè)將使用SOA作為其ITSOA計的,而又有哪些技術(shù)可以用來實現(xiàn)SOA(EnterpriseServiceBus,),看起來更是SOASOA實施ESB本系列文章將直接面對寬闊的軟件開發(fā)人員,首先以直觀的方式介紹什么是ESB,然后引入一個實際案例,以此為根底,具體介紹怎樣一步一步實現(xiàn)ESB。現(xiàn)在我們談?wù)揝OA和ESB樓閣,IBMSOAWebSphere6和IBMEAI的企業(yè)應(yīng)用場景中總線(Bus文章,能讓寬闊讀者朋友快速把握ESB回頁首SOA關(guān)于SOA同的軟件供給商也有不同的定義方式。BEAIndigo和SOA-building,SAP有ESA。每個人都可以從不同的視角來理解SOA,從程序員的角度,SOA組件模型,比方說WebService;從架構(gòu)設(shè)計師的角度,SOAIBM對SOA既SOA式供給應(yīng)最終用戶應(yīng)用或其他效勞。SOA一個體系架構(gòu),用開放的標(biāo)準(zhǔn)將軟件資產(chǎn)(Asset)化為效勞供給標(biāo)準(zhǔn)的方法來表示軟件資產(chǎn)及其交互單獨的軟件資產(chǎn)作為構(gòu)造單元,被重復(fù)使用來開發(fā)其他應(yīng)用將關(guān)注點從細(xì)節(jié)實現(xiàn)轉(zhuǎn)移到應(yīng)用(application)組裝整合企業(yè)外部的應(yīng)用〔B2B〕的方式開發(fā)〔現(xiàn)在〕和整合〔將來〕的統(tǒng)一件開發(fā)能夠滿足對于開發(fā)效率、牢靠性、易維護(hù)性、易治理等多方面SOA的必定性:面對機器語言(Monolithic)的開發(fā)模式:需要依據(jù)不同平臺的機器語言來開發(fā)代碼。面對過程(Procedure)的開發(fā)模式:獨立于機器的程序語言(C,Pascal代碼集合,包裝重用現(xiàn)成的代碼。面對對象(Object)的開發(fā)模式:用更接近現(xiàn)實的對象來表述一個相對完整的事物。面對對象的語言(Smalltalk,Java供給了更抽象的封裝和重用模式。面對對象的開發(fā)強調(diào)從現(xiàn)實世界問題域到軟件程序的直接映射,更接近人類的自然思維方式。面對組件(Component及分布式、異構(gòu)等簡單特征的環(huán)境中,代碼級別的重用性差,可維護(hù)性差,效率低的弱點是不行逾越的,因此人們以架構(gòu)運者解放出來,更專注于業(yè)務(wù)核心的開發(fā)。而這些業(yè)務(wù)功能(BusinessFunction)以組件的形式(DCOM,EJB在架構(gòu)運行環(huán)境中。軟件開發(fā)的重用模式也上升到業(yè)務(wù)組件的級別。面對效勞(SOA往往會面對更加簡單的IT(Service)的概念消滅了,人們將應(yīng)用(Application)以業(yè)務(wù)服務(wù)(BusinessService)的形式公布出來供別人使用,而完全不需要去考慮這些業(yè)務(wù)效勞運行在哪一個架構(gòu)體系上,由于全部的效勞都講著同樣的語言。SOA考慮了業(yè)務(wù)進(jìn)展的長期性,體現(xiàn)了“變化就是永恒“的思想。SOA的核心表達(dá)在企業(yè)應(yīng)用或者業(yè)IT與業(yè)務(wù)對立起來,這可以被視為在ITSOA(Reuse重用,對象重用,和部件重用,SOASOA于業(yè)務(wù)級的應(yīng)用,即效勞的重用,這與軟件的進(jìn)展規(guī)律是相全都的。在軟件進(jìn)展的過程中,軟件重用的對象越來越接近我們的現(xiàn)實生活。務(wù)模式。但是,ITITITITITIT變化自適應(yīng),要么ITSOAITITSOA從ITSOA相比,最大的進(jìn)步在于它與業(yè)務(wù)的關(guān)聯(lián)性,“效勞“對應(yīng)到實際業(yè)務(wù)。ITIT專注于業(yè)務(wù)規(guī)律的實現(xiàn),而共同的語言就是“效勞“。但不是什么場合都適用SOASOAIT構(gòu),常常需要與外部簡單的ITEJB一樣,假設(shè)你的IT其他的異構(gòu)ITSOA給你帶來的系統(tǒng)簡單性。但是,即令如此,你也并沒有被完全排解在SOASOA猛進(jìn)展,因此即使你的內(nèi)部ITSOA有時機參與到將來的SOA形式公布到某個外部SOASOA一個效勞供給者(ServiceProvider)存在。在選擇SOAWeb效勞與SOASOA的詞:一種模型。而Web效勞呢?它是一種具體的實現(xiàn)技術(shù),就像EJBSOAWebWeb效勞倒確實是目前最適合實現(xiàn)SOAWeb效勞來封裝業(yè)務(wù)效勞是個不錯的選擇。由于WebWS-IWeb交互,這是以前的任何一種技術(shù)如CORBA,EJB,或DCOM可以很便利地替換效勞的內(nèi)在實現(xiàn)而不會對現(xiàn)有的系統(tǒng)造成任何沖擊,這也極大地促進(jìn)了IT對于SOAIBMdeveloperWorksSOA相關(guān)的文章(請參見參考資料),我們的系列文章將主要爭論ESB,因此不再此過多地論述SOA記典型的SOASOA用;實現(xiàn)無關(guān);敏捷的架構(gòu)-效勞的實現(xiàn)細(xì)節(jié),效勞的位置乃至效勞懇求的底層協(xié)議都應(yīng)當(dāng)透亮;回頁首ESBBorlandC++猜猜我動用了什么:一根“串口線“。不過,我仍舊覺得慶幸,好在每臺機器都運行同樣的操作系統(tǒng)-DOS(很少有人還記得DOSInterlnk機器都連接起來,而不用我在各機器之間跑來跑去。讓我們回歸主題,你現(xiàn)在已經(jīng)根本明白了什么是SOA。假定你已經(jīng)依據(jù)SOA很多人也做了同樣的事情。大家都很興奮,開頭踴躍的嘗試,我調(diào)用你的一個效勞,你調(diào)我的一個效勞。啊哈!大家都SOA么這個SOAOk,現(xiàn)在我可以在J2EE里調(diào)用.NetSOA只要兩個節(jié)點之間相互認(rèn)可對方的方式,即使不存在公開/統(tǒng)一的效勞到點的調(diào)用,那么這就不是一個典型的SOA11的聯(lián)系。這樣一個構(gòu)造與我十幾年前的SOA要素嗎?明顯第三點沒有做到。因此,在SOASOA架構(gòu)中不同效勞之間的智能化治理。最簡潔想到的是這樣一個HUB-SpokeSOAHub中間件,由它充當(dāng)整個SOASOAEAI的應(yīng)用整合問題。EAIITEAIEAI,往往使用如CORBACOM的程序交互,修改企業(yè)資源規(guī)劃以到達(dá)的目標(biāo),使用中間件、XMLEAI很不幸的是,基于部件的架構(gòu)沒有統(tǒng)一的標(biāo)準(zhǔn),因此,各個廠商都有各自不同的EAIEAIIT性。因此,你所見過的大多數(shù)傳統(tǒng)EAI再回憶一下我們上面介紹過的SOA假設(shè)我們選擇HubSOASOA的懇求都經(jīng)過中心HubHubHub錯,整個SOASOA原則,參與者運行在一個相對封閉的環(huán)境中,擴展起來格外麻煩。因此,這也不是抱負(fù)的SOA好了,現(xiàn)在該ESB它與前面的HubHubSOA皆為效勞,效勞在總線(BUS)中處于公平的地位。即使我們需要一些Hub,那么它們也是以某種效勞的形式部署在總線上,相比上面的構(gòu)造要敏捷的多。這就是ESB,我們需要給它一個明確的定義:ESB是一面對效勞的架構(gòu)-分布式的應(yīng)用由可重用的效勞組成面對消息的架構(gòu)-應(yīng)用之間通過ESB大事驅(qū)動的架構(gòu)-應(yīng)用之間異步地產(chǎn)生和接收消息述它:ESBSOA而它與SOASOA所遵循的環(huán)境下(SOA架構(gòu)中)實施EAIESBEAI實現(xiàn),只要是SOA其次,ESB(Message)處理在集成過程中的作用,這里EAIEAIEAIAPIEAIESBESBESB對消息的處理就會成為ESB最簡潔可行的方式。這也是ESB(Bus)功能的表達(dá)。其實,總EAI集成根底架構(gòu)。ESB(Call/回應(yīng)方式,這是常見的同步模式。還有一種我們稱之為單路消息(One-way),它的目的往往是觸發(fā)異步的大事,發(fā)送者不需要馬上得到回復(fù)??紤]到有些應(yīng)用效勞是ESBSOAESB當(dāng)效勞的懇求通過ESBESBSOA回頁首ESBESBESB效勞的供給者和ESB(MetaData)治理功能和中介(Mediation)功能。作為SOA接到總線上來,我們稱之為適配器(Adapter)功能。盡管效勞本身已,ESBJ2ee,.Net,通訊協(xié)議如,JMS應(yīng)用中涉及到的效勞加以治理,如性能,牢靠性,安全性等等。ESB供給了最根本的功能來保障SOA容:Meta-data面對效勞的中介功能供給位置透亮性的效勞路由和定位效勞多種消息傳遞型式(懇求/響應(yīng),單路懇求,公布/訂閱等等)(,JMS,MQJCA、Web效勞、Messaging、Adaptor對效勞治理的支持,如效勞調(diào)用的記錄、測量和監(jiān)控數(shù)據(jù)的供給很多時候,很難界定哪些功能是應(yīng)當(dāng)由SOA(infrastructureESBESB在SOA的解釋是:ESBSOA集成。至于怎樣集成,應(yīng)當(dāng)依據(jù)你的上下文環(huán)境,考慮有哪些SOA的根底設(shè)施可供你使用,然后再基于SOAESB設(shè)計。在更高的層次,ESB稱之為ESB(ESBusagepattern)。作為SOA1〕協(xié)議轉(zhuǎn)換模型,用于當(dāng)效勞的懇求者與效勞供給者基于不同協(xié)議時的消息轉(zhuǎn)換情形消息播送模式,用于大事驅(qū)動多個動作或者消息播送的情形效勞匹配模式,用于需要動態(tài)選擇效勞供給者的情形,例如可以依據(jù)消息的內(nèi)容,或負(fù)載狀況,或效勞級別商定(SLA),來為效勞懇求者選擇適宜的效勞。3ESB在ESBESB業(yè)務(wù)編排效勞(ProcessService)來組織。回頁首實戰(zhàn)關(guān)于ESB,目前還沒有被全都承受的標(biāo)準(zhǔn)。我們可以通過選擇成熟的EAI的EAIIBMWebSphereMQ5.3,作為IBMEAIESB的標(biāo)準(zhǔn)。假設(shè)肯定要選擇開放標(biāo)準(zhǔn)的ESBWeb效勞加上WS-*SOAESB段,一方面我們還沒有很成熟的產(chǎn)品支持全部的WS-*協(xié)議,另一方面這些WS-*協(xié)議本身還處在頻繁變化的階段。因此當(dāng)你選擇ESB施方案的時候,最好考慮平衡ESBSOA用私有的ESBIBMWBI/MQSOA一個好問題。SOA是毋庸置疑的。但是,請留意ESBESBESB是SOAESB兩1.61.4IBMESB以目前穩(wěn)定的產(chǎn)品如WSMQ,WBIMessageBroker,Tivoli為代表的EAI以WAS6SIBUSESB現(xiàn)有的EAIIBMWebSphereBIMessageBrokerESBmessage中介功能(Mediation)WebSphereMQ/JMSWebSphereProcessChoreographerWebSphereAdaptorWebServiceGatewayWebProxy,屏蔽企業(yè)內(nèi)部/外部WebWAS6中供給了嶄的消息效勞平臺WPM(WebSphereplatformmessaging),并基于這一平臺供給了ESBSIBu

溫馨提示

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

最新文檔

評論

0/150

提交評論