1. 程式人生 > >ESB 企業服務匯流排基本內容概述

ESB 企業服務匯流排基本內容概述

ESB全稱為Enterprise Service Bus,即企業服務匯流排。

它是傳統中介軟體技術與XML、Web服務等技術結合的產物。

ESB提供了網路中最基本的連線中樞,是構築企業神經系統的必要元素。

這裡寫圖片描述

整個架構體系裡面分為三個元件或子系統,即偏開發態的設計器,偏執行態的ESB核心引擎和SOA治理管控平臺三個方面的內容。以上三者組合和整合形成一款完整的ESB服務匯流排產品。對於三者之間的關係可以簡單的描述為:

首先對於ESB匯流排引擎是一個完全相對獨立的內容,即常說的ESB的Server端,一個完整的ESB引擎一般都會整合訊息中介軟體的能力。類似ServiceMix的ESB可以看到核心是基於OSGI執行框架下的ActiveMQ+CXF元件來實現基礎核心功能。沒有設計器和管控平臺,引擎也可以獨立部署和執行,即可以自己寫程式碼或寫配置檔案,將開發好的服務包部署到ESB引擎環境裡面。

其次是ESB設計器,設計器是屬於開發和設計態的一個內容,重點則是對http,rest,已經服務+DB,訊息等各種內容進行整合。

最後一個內容是SOA管控平臺,主要的作用是實現服務的全生命週期管理,包括服務的元資料管理,服務目錄庫,服務的申請,服務的開通和鑑權,服務執行日誌審計和監控,服務執行分析,服務預警,服務SLA等各種功能。即SOA管控平臺提升了對ESB引擎本身的管控和治理能力。

一、ESB的五個基本功能:

  
1)服務的MetaData管理:在匯流排範疇內對服務的註冊命名及定址進行管理。
 
2)傳輸服務:確保通過企業匯流排互連的業務流程間的訊息的正確交付,還包括基於內容的路由功能。   

3)中介:提供位置透明的路由和定位服務;提供多種訊息傳遞形式;支援廣泛使用的傳輸協議。   

4)多服務整合方式: 如JCA,Web服務,Messaging ,Adaptor等.   

5)服務和事件管理支援: 呼叫服務的記錄、測量和監控資料;提供事件檢測、觸發和分佈功能。

二、ESB的八個擴充套件功能:

 
1) 面向服務的元資料管理: 他必須瞭解被他中介的兩端,即服務的請求以及請求者對服務的要求,以及服務的提供者和他所提供的服務的描述;   

2) Mediation :它必須具有某種機制能夠完成中介的作用,如協議轉換;   
3) 通訊:服務釋出、訂閱,響應 請求,同步非同步訊息,路由和定址等;   

4) 整合: 遺留系統介面卡,服務編排和對映,協議轉換,資料變換,企業應用整合中介軟體的連續等。   

5) 服務互動: 服務介面定義,服務實現的置換,服務訊息模型,服務目錄和發現等。   

6) 服務安全: 認證和授權、不可否認和機密性、安全標準的支援等;   

7) 服務質量: 事務,服務的可交付性等;   

8) 服務等級: 效能、可用性等。 ESB 中最常提到的兩個功能是訊息轉換和訊息路由。

三、ESB的出現改變了傳統的軟體架構

ESB 是傳統中介軟體技術與XML、Web服務等技術相互結合的產物,ESB的出現改變了傳統的軟體架構,可以提供比傳統中介軟體產品更為廉價的解決方案,同時它還可以消除不同應用之間的技術差異,讓不同的應用伺服器協調運作,實現了不同服務之間的通訊與整合。從功能上看,ESB提供了事件驅動和文件導向的處理模式,以及分散式的執行管理機制,它支援基於內容的路由和過濾,具備了複雜資料的傳輸能力,並可以提供一系列的標準介面。

四、企業服務匯流排(ESB)的用處

ESB 不是萬能的,他不是一個應用程式框架,也不是一個企業應用的解決方案.它只是一個基於訊息的呼叫企業服務的通訊模組!你可以把它嵌入到你的應用程式框架中,例如嵌入到spring容器裡面,或者嵌入到工作流系統中.它的作用是對企業裡面的SOA服務的呼叫提供一個框架和簡便的方法。

五、企業服務匯流排(ESB)的應用特徵

大規模分散式的企業應用需要相對簡單而實用的中介軟體技術來簡化和統一越來越複雜、繁瑣的企業級資訊系統平臺。面向服務體系架構(SOA)是能夠將應用程式的不同功能單元通過服務之間定義良好的介面和契約聯絡起來。SOA使使用者可以不受限制地重複使用軟體、把各種資源互連起來,只要IT人員選用標準介面包裝舊的應用程式、把新的應用程式構建成服務,那麼其他應用系統就可以很方便的使用這些功能服務。 
  
 支撐SOA的關鍵是其訊息傳遞架構-企業服務匯流排(ESB)。ESB是傳統中介軟體技術與XML、Web服務等技術相互結合的產物,用於實現企業應用不同訊息和資訊的準確、高效和安全傳遞。ESB的出現改變了傳統的軟體架構,可以提供比傳統中介軟體產品更為廉價的解決方案,同時它還可以消除不同應用之間的技術差異,讓不同的應用服務協調運作,實現不同服務之間的通訊與整合。