- MuleSoft 教程
- MuleSoft - 首頁
- MuleSoft - Mule ESB 簡介
- MuleSoft - Mule 專案
- MuleSoft - Mule 在我們的機器中
- MuleSoft - Anypoint Studio
- MuleSoft - 探索 Anypoint Studio
- 建立第一個 Mule 應用程式
- MuleSoft - DataWeave 語言
- 訊息處理器和指令碼元件
- 核心元件及其配置
- MuleSoft - 端點
- 流程控制和轉換器
- 使用 Anypoint Studio 的 Web 服務
- MuleSoft - Mule 錯誤處理
- MuleSoft - Mule 異常處理
- MuleSoft - 使用 MUnit 進行測試
- MuleSoft 有用資源
- MuleSoft - 快速指南
- MuleSoft - 有用資源
- MuleSoft - 討論
MuleSoft - Mule ESB 簡介
ESB 代表 **企業服務匯流排**,它基本上是一箇中間件工具,用於透過類似匯流排的基礎設施整合各種應用程式。從根本上說,它是一種旨在提供統一方式在整合應用程式之間移動工作的體系結構。這樣,藉助 ESB 體系結構,我們可以透過通訊匯流排連線不同的應用程式,並使它們能夠相互通訊,而無需依賴彼此。
實施 ESB
ESB 體系結構的主要重點是將系統彼此解耦,並允許它們以穩定和可控的方式進行通訊。ESB 的實現可以透過以下方式藉助 **“匯流排”** 和 **“介面卡”** 來完成:
“匯流排”的概念(透過 JMS 或 AMQP 等訊息伺服器實現)用於將不同的應用程式彼此解耦。
“介面卡”的概念負責與後端應用程式通訊並將資料從應用程式格式轉換為匯流排格式,用於應用程式和匯流排之間。
透過匯流排從一個應用程式到另一個應用程式傳遞的資料或訊息採用規範格式,這意味著將存在一個一致的訊息格式。
介面卡還可以執行其他活動,例如安全、監控、錯誤處理和訊息路由管理。
ESB 的指導原則
我們可以將這些原則稱為核心整合原則。它們如下:
**編排** - 整合兩個或多個服務以實現資料和流程之間的同步。
**轉換** - 將資料從規範格式轉換為特定於應用程式的格式。
**傳輸** - 處理協議協商(例如 FTP、HTTP、JMS 等格式)。
**中介** - 提供多個介面以支援服務的多個版本。
**非功能一致性** - 也提供用於管理事務和安全的機制。
ESB 的需求
ESB 體系結構使我們能夠整合不同的應用程式,其中每個應用程式都可以透過它進行通訊。以下是一些關於何時使用 ESB 的指南:
**整合兩個或多個應用程式** - 當需要整合兩個或多個服務或應用程式時,使用 ESB 體系結構是有益的。
**將來整合更多應用程式** - 假設如果我們想將來新增更多服務或應用程式,那麼藉助 ESB 體系結構可以輕鬆完成。
**使用多種協議** - 如果我們需要使用多種協議(如 HTTP、FTP、JMS 等),ESB 是正確的選擇。
**訊息路由** - 如果我們需要根據訊息內容和其他類似引數進行訊息路由,則可以使用 ESB。
**組合和消費** - 如果我們需要釋出服務以進行組合和消費,則可以使用 ESB。
P2P 整合與 ESB 整合
隨著應用程式數量的增加,開發人員面臨的一個重大問題是如何連線不同的應用程式?這種情況透過手動編碼各種應用程式之間的連線來處理。這稱為 **點對點整合**。
**剛性** 是點對點整合的最明顯的缺點。隨著連線和介面數量的增加,複雜性也會增加。P-2-P 整合的缺點導致我們轉向 ESB 整合。
ESB 是一種更靈活的應用程式整合方法。它將每個應用程式的功能封裝並公開為一組離散的可重用功能。沒有應用程式直接與其他應用程式整合,而是透過 ESB 整合,如下所示:
為了管理整合,ESB 具有以下兩個元件:
**服務登錄檔** - Mule ESB 具有服務登錄檔/儲存庫,其中所有公開到 ESB 的服務都已釋出和註冊。它充當發現點,從中可以消費其他應用程式的服務和功能。
**集中式管理** - 顧名思義,它提供了 ESB 內部發生的互動的效能事務流的檢視。
**ESB 功能** - 通常使用 VETRO 首字母縮寫詞來總結 ESB 的功能。如下所示:
**V**(驗證) - 顧名思義,它驗證模式驗證。它需要一個驗證解析器和最新的模式。一個例子是符合最新模式的 XML 文件。
**E**(豐富) - 它向訊息新增其他資料。目的是使訊息對目標服務更有意義和有用。
**T**(轉換) - 它將資料結構轉換為規範格式或從規範格式轉換。例如日期/時間、貨幣等的轉換。
**R**(路由) - 它將路由訊息並充當服務端點的網守。
**O**(操作) - 此功能的主要工作是呼叫目標服務或與目標應用程式互動。它們在後端執行。
VETRO 模式為整合提供了整體靈活性,並確保只有始終如一且經過驗證的資料才能在整個 ESB 中路由。
什麼是 Mule ESB?
Mule ESB 是 MuleSoft 提供的基於 Java 的輕量級且高度可擴充套件的企業服務匯流排 (ESB) 和整合平臺。Mule ESB 允許開發人員輕鬆快速地連線應用程式。無論應用程式使用什麼技術,Mule ESB 都可以輕鬆整合應用程式,使它們能夠交換資料。Mule ESB 具有以下兩個版本:
- 社群版
- 企業版
Mule ESB 的一個優點是我們可以輕鬆地從 Mule ESB 社群版升級到 Mule ESB 企業版,因為這兩個版本都是基於共同的程式碼庫構建的。
Mule ESB 的功能和特性
Mule ESB 具有以下功能:
- 它具有簡單的拖放圖形設計。
- Mule ESB 能夠進行視覺化資料對映和轉換。
- 使用者可以獲得數百個預構建的經過認證的聯結器的便利。
- 集中式監控和管理。
- 它提供了強大的企業安全執行功能。
- 它提供了 API 管理的功能。
- 有一個安全的資料閘道器用於雲/本地連線。
- 它提供了服務登錄檔,其中所有公開到 ESB 的服務都已釋出和註冊。
- 使用者可以透過基於 Web 的管理控制檯進行控制。
- 可以使用服務流分析器進行快速除錯。