esb是企業服務匯流排(enterprise service bus)的縮寫,是中介軟體技術與web service等技術結合的產物,也是soa系統中的核心基礎設施。esb就是乙個服務的中介,形成服務使用者->esb服務proxy->服務提供者的生物鏈,中介的作用在不同應用中各有不同:
從上面可以看到esb的基本功能仍然是資料傳輸,訊息協議轉化,路由三大核心功能。有這三大核心功能也可以看到在進行異構系統的整合時候往往根據需要 esb提供這些功能。沒有esb時候也可以實現soa,比如借助sca和bpel來實現soa,當時卻很難實現訊息協議轉化和動態路由。
esb在發展過程中有從原有的訊息中介軟體轉化為esb產品的,這類訊息中介軟體和資料匯流排產品在原有的eai企業應用整合中應用比較多。而soa根據強調了基於服務的整合,以web service服務為基本的管理單元。乙個服務的定位是關於如何把業務邏輯表現成為一組相互獨立的,自描述的且能互操作的實體。
對於soa關注的是服務全生命週期,通過服務實現業務價值。而esb關注的是服務中介和服務的整合,是soa的基礎設施。soa有兩個核心元件,乙個是 esb,乙個是bpel,而esb是基礎設施,bpel是業務流程驅動下服務的整合和整合。離開了soa,esb將失去它所連線的服務,而僅僅是乙個總 線,同時也將變得毫無價值。bobby做了乙個比喻:路是沒有任何價值的,除非你利用它把乙個東西從乙個地方移到另外乙個地方。而離開soa,esb就像 乙個沒人使用的道路。
做soa的事情不要先上來建立乙個大而全的esb,相反是關注你的業務問題,找到用soa的方法來解決業務上的需求,在解決這個問題的過程當中,你會看到 一系列的業務服務。這些業務服務是會產生業務價值的。它可以靈活地組裝,動態地解決你變化的業務需求。這是它的價值,只有這樣才能使你的業務敏捷起來,隨 需應變起來。而在服務的組裝過程中,你再去考慮利用esb來把他們連線起來。
esb 需要某種形式的服務路由目錄(service routing directory)來路由服務請求。然而,soa 可能還有單獨的業務服務目錄(business service directory),其最基本的形式可能是設計時服務目錄,用於在組織的整個開發活動中實現服務的重用。web 服務遠景在業務服務目錄和服務路由目錄的角色中都放置了乙個 uddi 目錄,因而使得可以動態發現和呼叫服務。這樣的目錄可以視為 esb 的一部分;然而,在這樣的解決方案變得普遍之前,業務服務目錄可能與 esb 是分離的。
標準的 esb 功能
通訊服務互動
整合服務質量
安全性服務級別
訊息處理
管理和自治
建模基礎架構智慧型
上面的許多功能既可以使用專有技術實現,也可以通過利用開放標準實現。然而,使用不同的技術來實現 esb 可能會使它們的效能、可伸縮性和可靠性這些特性顯著不同,同時 esb 功能和所支援的開放標準也會有所不同。由於這些原因,再加上最近制訂和正在興起的一些相關標準,當今實現 esb 的許多關鍵決策都涉及到成熟的專有技術和不成熟的開放標準之間的權衡。
支援 soa 的最低功能的 esb 實現
如果在前面確定的功能中只有一部分和大多數 soa 場景相關,我們可能會問:實現 esb 所需的一組最低功能由什麼構成?為此,考慮最被普遍認同的 esb 定義的原理:
最低的 esb 功能
通訊整合
服務互動
請注意這些最低功能並不需要使用特別的技術,比如 eai 中介軟體、web 服務、j2ee 或 xml。這些技術的使用非常接近也非常符合需求,但是不必強制要求使用它們。相反,最低功能幾乎只需簡單地使用 soap/http 和 wsdl 就可以實現(當然不是所有的情況都這樣):
然而,這些 soap/http 和 wsdl 的基本應用只是點到點(point-to-point)的整合,並不能實現一些 esb 需要的關鍵功能:
當然,在許多甚至是大多數情形中往往需要其他的功能,並且這種需要變得越來越常見。特別地,不管是現在還是以後,下面的需求型別可能會導致更複雜高階的技術的使用:
ESB企業服務匯流排
esb全稱為enterprise service bus,即企業服務匯流排。它是傳統中介軟體技術與xml web服務等技術結合的產物。esb提供了網路中最基本的連線中樞,是構築企業神經系統的必要元素。esb的出現改變了傳統的軟體架構,可以提供比傳統中介軟體產品更為廉價的解決方案,同時它還可以消除不同...
企業服務匯流排ESB
企業服務匯流排 enterprise service bus 以往企業已經實現了很多服務,構成了面向服務的架構,也就是我們常說的soa.服務的參與雙方都必須建立1對1 的聯絡,讓我們回顧一下soa架構有哪些基本的要求 soa在相對較粗的粒度上對應用服務或業務模組進行封裝與重用 服務間保持鬆散耦合,基...
ESB企業服務匯流排
esb是企業服務匯流排 enterprise service bus 的縮寫,是中介軟體技術與web service等技術結合的產物,也是soa系統中的核心基礎設施。esb就是乙個服務的中介,形成服務使用者 esb服務proxy 服務提供者的生物鏈,中介的作用在不同應用中各有不同 從上面可以看到es...