深入解讀ESB與SOA的關係

2021-09-02 03:16:13 字數 4576 閱讀 6288

深入解讀esb與soa的關係

有關esb的概念,已經吵了好多年了,還是沒有定論。

我個人認為,esb本來就是抽象的概念,而且內涵豐富,在不同的場合含義不同。因此應該從不同的角度來認識。

一、soa和esb一直是沒有明確概念的兩個縮略詞

原因是這兩個詞包含的內涵太豐富了,無法用一兩句話說清楚,並且,這個詞在不同的地方含義也有所不同。

soa----面向服務架構,實際上強調的是軟體的一種架構,一種支撐軟體執行的相對穩定的結構,表面含義如此,其實soa是一種通過服務整合來解決系統整合的一種思想。不是具體的技術,本質上是一種策略、思想。

esb----企業服務匯流排,像一根「聰明」的管道,用來連線各個「愚笨」的節點。為了整合不同系統,不同協議的服務,esb做了訊息的轉換解釋與路由等工作,讓不同的服務互聯互通。

目前esb與soa的確切概念依然沒有。但可以明確的說soa就是一種服務整合思想,它的不同實現方式可能差別很大,目前soa最常見的實現方式是sca和jbi。

二、esb究竟是什麼

這個問題在個大廠商之間,認識和觀點也存在很大差異。

ibm、oracle等認為esb是連線服務的一種模式,但一些開源組織和其他廠商認為esb是一種產品,並且提供了esb連線解決方案的實現,這種實現可以認為是中介軟體,也可以認為是元件工具。

對此,我個人的觀點更偏向前者,esb是一種模式,esb的實現方式也很多,可以稱之為esb產品。當然在不同場合esb的含義也不同,需要鑑別。

三、為什麼esb總和soa黏在一塊

通常,這兩個名詞總不分家,談論的話題中「你中有我,我中有你」。

為什麼是這樣的呢?

esb是soa嗎?

兩者之間究竟有什麼微妙的關係呢?

帶著疑問,繼續往下看:

首先,esb不是soa。soa的最常見的實現方式方式是sca和jbi,而sca的實現需要esb,相反jbi則不需要esb,可以參看本人對jbi和sca分析解讀的文章。

其次,因為ibm和oracle(收購了bea和sun的牛x公司)都推崇sca模式的soa,因此sca實際上已經成為soa的事實標準,說道soa,最先想到的就是sca模式了。

最後,esb是sca架構實現不可缺少的一部分,esb產品脫離了具體的應用外,沒有任何意義。esb的作用在於實現服務間智慧型化整合與管理的中介。通過esb可以訪問所整合系統的所有已註冊服務。

四、esb的特點

esb是一種在鬆散耦合的服務和應用之間標準的整合方式。它可以作用於:

面向服務的架構 - 分布式的應用由可重用的服務組成

面向訊息的架構 - 應用之間通過esb傳送和接受訊息

事件驅動的架構 - 應用之間非同步地產生和接收訊息

esb就是在soa架構中實現服務間智慧型化整合與管理的中介。

(本段話引用:it專家網

學習乙個新事物,認識是最重要的,只有不斷的去學習去認識,才能把握其特點、功能、屬性等等,並在認識的基礎上加以合理利用。任何魚目混珠的認識只能導致偏離原則和標準。

esb來由背景

過去幾年裡,美國企業的經營理念在競爭加劇和it發展的驅使下,開始朝著實時型企業(real-time enterprise)的管理模式發展。實時型企業是gartner公司提出來的概念。要想成為乙個實時型企業,企業就必須能對發生在任何地方和任何時間的關鍵業務和事件做出最迅速的反應,其反應速度必須是瞬間,即零延時的。乙個實時型企業必須具備實時處理突發事件的能力。

顯然,實時型企業希望能夠在事件發生時,就立刻做出相應的反應。它使得企業管理不再是被動地對所出現的狀況進行反應,而是能進行主動及時地反應,在商機出現時,實時地完成商務運作,在零延時的狀況下搶占市場先機。實時型企業的管理和運轉已呈現出了由事件實時驅動管理能力和反應能力的態勢。

乙個具備實時反應能力的企業對資訊系統的整合提出了前所未有的高要求,因為分割和零散的系統將阻礙其成為實時型企業。對大型企業而言,想整合現有的系統本身就是一項巨大的工程,加之還要在整合中兼顧企業發展的新需求,這就難上加難。可見,想在維持企業正常工作的環境中,同時兼顧新舊系統之間的融合、解決各分支機構和各部門間的資訊溝通和資料共享,真正轉變為乙個實時型企業的難度很大。

面對這些頭痛的問題,企業需要乙個能夠真正化解難題的技術平台——它應該是高屋建瓴,超然於現有的所有技術平台和應用平台之上。這樣才能把處於分散狀態且未來也絕不可能集中的軟硬體平台整合起來。此外,這個平台還要能包容未來不斷增長和動態變化的企業資訊化的需求,並能夠把新系統完整、有機而自然地與現有系統架構整合在一起。在這種需求背景下,esb(enterprise service bus,企業級服務匯流排)中介軟體技術恰如其時地出現了。

esb介紹

esb中介軟體技術是原生技術,其技術概念形成於2023年,是由位於美國亞利桑那州的國家光學天文台(national optical astronomy observatory,noao)提出的。當時,noao希望其能把天文望遠鏡拍攝到的影象轉換成海量資訊,並將之實時地傳輸到實時影象處理和顯示子系統,讓天文科學家能夠與天文望遠鏡同步在電腦螢幕上看到星際影象。這套資訊處理系統被稱為mdhs(mosaic data handling system),其核心元件是mb(message bus,訊息匯流排)中介軟體。這個中介軟體具備兩個與當時通用的商用訊息排隊中介軟體技術完全不同的能力:實時傳輸資訊的能力;海量的資料承載能力。訊息匯流排的這兩個核心技術也是組成esb中介軟體技術的核心。

訊息匯流排一問世就被乙個財大氣粗的贊助商——美國宇航局看上。這是因為美國宇航局的太空梭中有乙個fp(fault protection)的資訊應用系統,它是乙個故障保護系統,專門負責太空梭所有的軟硬體系統出錯後的保護和糾錯。另外,宇航局地面控制中心的指令也是通過fp系統傳輸和執行的。可以說,fp是太空梭中最關鍵的軟體系統之一。

當太空梭的乙個熱敏感測器察覺到機械部件過熱時,它會把資訊傳輸給fp系統,再由其發出相應的指令進行調節。地面控制中心也會向太空梭發出一連串的指令,這些指令必須按照發出的順序,在指定時間內執行,不得出現時間和順序上的錯亂。龐大的太空梭系統隨時都會同時出現多個錯誤,這些錯誤必須得到實時解決,因此要求fp必須具備分布式同時解決多個問題和共享解決方案的能力;另外,fp對系統容錯的要求也很高。mb的設計構思正好能夠滿足美國宇航局這些苛刻的要求,因此它被美國宇航局選中,成為fp系統的通訊中介軟體。

「公共汽車」

從上世紀90年代中期開始,美國企業就開始致力於解決公司資訊系統的整合問題。對美國企業而言,尤其是那些規模龐大的企業和跨國公司,如何把過去10幾年乃至幾十年積累下來的軟硬體系統整合起來,成為它們面臨的乙個永恆挑戰。它們年年談整合、年年做整合,其間不同的整合概念和技術平台層出不窮,但不盡相同的解決方案總存在著不足。這些不足使得企業為了達到整合的目的要麼需要增加額外的硬體投資,要麼就得額外購買軟體。而錢花出去,效果卻往往不盡如人意,當新的資訊系統執行後,又需要把過去整合過的系統與新系統再整合一次。於是,企業陷入了無休止的整合—開發—再整合—再開發的怪圈,以至於一些企業不堪重負。

通常而言,企業在整合和發展資訊系統時會面臨兩大難題:一是如何自然、有效地整合種類繁多、分散於各地、服務於不同商業目標的資訊系統平台;二是如何只利用一種成熟、有效的中介軟體技術,就能把未來的新資訊系統有機地包容到現有系統中,使現在和未來能自然而有機地結合在一起。

於是,美國的it業界清楚地意識到他們需要乙個應用起來相對簡單而實用的中介軟體技術來簡化和統一越來越複雜、繁瑣的企業級資訊系統平台。it整合技術勢必將經歷一場無可避免的陣痛。

與太空有著不解之緣的esb所使用的底層技術概念全盤接受了訊息匯流排(mb)的設計概念。其實,esb中介軟體的概念並不複雜,人們可以將它看做一輛不間斷執行的公共汽車——在不同車站有乘客上下,在同一站點上車的乘客可以在同一車站或不同站點下車。不過,與傳統公共汽車不同的是,esb能夠用足夠快的速度傳遞資訊,即實時地傳遞資訊;另外,esb還具備強大的資訊傳輸能力,可以達到gb級、甚至tb級的資料承載能力。esb傳輸的是帶有服務任務的計算機資訊和指令,它們可以不斷地被一群伺服器裝載到esb,然後再由另一群伺服器把資訊從esb上解除安裝下來,以服務於不同的業務需求和目的。

esb最大的技術特點在於,它是乙個完全面向企業級的中介軟體解決方案,可以架構在企業現有的網路框架、軟硬體系統之上,構築出乙個企業級的資訊系統解決方案。在esb中,伺服器猶如乙個個汽車站,可以自由地連線和脫離esb中介軟體,所有的資訊系統都可以通過其傳送或接受任務、指令,它適用於所有的現有或未來的資訊應用平台。

對企業而言,採用esb中介軟體系統作為企業級資訊系統整合方案中的中樞技術,幾乎可以無須新增任何軟硬體裝置,就可把過去、現有和未來的it系統整合在企業級的資訊應用框架下,並且能為企業提供實時、大容量的資訊通訊和實時控制、管理和分配訊息傳遞的能力。它能大大提高整個網路和資訊系統的使用效率,它還能為企業節省可觀的整合費用。

esb中介軟體技術的強勢出現不僅解決了令企業最頭痛的資訊系統整合問題,還能滿足企業向實時型公司轉型的需求。esb的實時資訊傳遞和大容量的資訊承載能力適用於不同行業和型別的商業應用。目前,it業界所流行的it服務隨需而動(service on demand)、網格計算(grid computing)或服務導向型企業級資訊系統架構(service-oriented architecture,soa)等新概念都可以使用esb技術平台,作為其實現藍圖的工具。可以說,esb技術平台為企業級資訊系統的整合、規劃、開發和建設提供了一把低成本和相對簡單、實用的鑰匙。

深入解讀ESB與SOA的關係

時至今日,soa的概念漸漸清晰了。有關esb的概念,已經吵了好多年了,還是沒有定論。我個人認為,esb本來就是抽象的概念,而且內涵豐富,在不同的場合含義不同。因此應該從不同的角度來認識。一 soa和esb一直是沒有明確概念的兩個縮略詞 原因是這兩個詞包含的內涵太豐富了,無法用一兩句話說清楚,並且,這...

深入解讀ESB與SOA的關係

時至今日,soa的概念漸漸清晰了。有關esb的概念,已經吵了好多年了,還是沒有定論。我個人認為,esb本來就是抽象的概念,而且內涵豐富,在不同的場合含義不同。因此應該從不同的角度來認識。一 soa和esb一直是沒有明確概念的兩個縮略詞 原因是這兩個詞包含的內涵太豐富了,無法用一兩句話說清楚,並且,這...

深入解讀ESB與SOA的關係

深入解讀esb與soa的關係 時至今日,soa的概念漸漸清晰了。有關esb的概念,已經吵了好多年了,還是沒有定論。我個人認為,esb本來就是抽象的概念,而且內涵豐富,在不同的場合含義不同。因此應該從不同的角度來認識。一 soa和esb一直是沒有明確概念的兩個縮略詞 原因是這兩個詞包含的內涵太豐富了,...