- JBoss Fuse 教程
- JBoss Fuse – 首頁
- JBoss Fuse - ESB 簡介
- 什麼是 Fuse?
- JBoss Fuse – Apache Karaf
- JBoss Fuse – Apache Camel
- JBoss Fuse – Camel 概念
- JBoss Fuse – Apache CXF
- JBoss Fuse – REST Web 服務
- JBoss Fuse – Apache AMQ
- JBoss Fuse – Camel 與 AMQ
- JBoss Fuse – Fabric
- JBoss Fuse – 子容器
- JBoss Fuse – 問題與解決方案
- JBoss Fuse 有用資源
- JBoss Fuse - 快速指南
- JBoss Fuse - 有用資源
- JBoss Fuse - 討論
JBoss Fuse - ESB 簡介
本章我們將從企業服務匯流排 (ESB) 的基本概念開始。下面是關於 ESB 的詳細解釋,包括其優點、缺點以及一些便於理解的圖表。
什麼是 ESB?
ESB 代表企業服務匯流排 (Enterprise Service Bus)。簡單來說,ESB 是一種中介軟體,充當資訊高速公路,幫助多個應用程式進行通訊。
在企業世界中,我們為許多事情開發解決方案。這些解決方案可能使用不同的技術和不同的資料格式。由於這些技術的通訊或資料格式的相容性差異,將這些解決方案結合使用變得非常繁瑣。因此,我們需要一種技術來允許這些不同解決方案之間的鬆散耦合整合。
ESB 旨在透過成為位於所有應用程式中間的“中心”,並促進它們之間的訊息路由來簡化這個整合問題。ESB 充當媒介,作為資訊高速公路,負責資料轉換和路由,讓程式設計師或開發人員專注於自己的應用程式邏輯。
當我們理解 ESB 為其特別設計的解決的問題時,理解 ESB 就變得非常簡單,解決方案也變得容易。應該清楚地瞭解如何使許多不同的系統(使用不同的語言編寫,在不同的機器上執行,使用不同的資料格式)能夠共享資訊並形成一個整合的業務平臺。
整合問題
在企業平臺中,多個應用程式協作並整體提供業務功能是很常見的,但是這些應用程式的整合是最常見的問題。隨著應用程式的增長,這個問題會變得更加困難。
每個應用程式可能使用自己的格式輸入和輸出資料。如果應用程式數量較少,這種方法效果很好,但是隨著應用程式數量的增加,也需要採用更好的方法來改進整合。例如,如果業務的特定應用程式需要更改,則所有依賴於該主應用程式的應用程式的輸出或輸入資料格式都會受到影響。
這種方法是整合面臨的最大障礙,整合需要緊密耦合的架構。這就是 ESB 發揮作用的地方。每個應用程式不需要直接與其他應用程式通訊;相反,所有應用程式都與 ESB 通訊,ESB 處理資訊的路由和內部資料格式轉換。
為什麼選擇 ESB?
以下幾點解釋了為什麼企業服務匯流排至關重要。
ESB 旨在簡化具有不同相容應用程式的整合問題。
它充當中介軟體,作為所有應用程式的媒介,並促進它們之間的訊息路由。
每個應用程式不再直接與其他每個應用程式互動,而是現在只有一個與 ESB 的介面。
ESB 負責將訊息轉換為/從通用格式轉換,並將它們路由到其目的地。
如果必須替換任何現有應用程式,這種方法的主要優勢就體現出來了。您現在只需要關注一個介面(應用程式和 ESB 之間),而不是編寫大量新的介面。
SOA 與 ESB?
SOA 和 ESB 通常可以互換使用,但它們完全不同。
SOA 是一種設計模式,允許應用程式透過通訊協議在網路上公開其功能作為服務,而 ESB 是一種促進不同系統之間通訊的模型,但在實現 SOA 時,ESB 可以用作主幹。