Microsoft BizTalk ESB 工具組包含一系列的互通元件,可支援並實作鬆散結合的傳訊環境,讓您更輕鬆地建置訊息型企業應用程式。 服務和元件自然會分成下列七個類別:
Web 服務。 這些會公開內部服務,例如路線處理、例外狀況管理、端點和地圖的解析、BizTalk Server作業、通用描述、探索和整合 (UDDI) 互通,以及訊息內容的轉換。
路線服務。 其中包括協調流程型和傳訊型服務,用於執行轉換和訊息路由。 您可以建立參與路線處理的自訂服務。 其中包括協調流程型和傳訊型服務,用於執行轉換和訊息路由。 您可以建立參與路線處理的自訂服務。
路線。 這些會接收外部訊息、附加每個訊息的適當路線,以及執行路線處理;他們會使用 Microsoft BizTalk ESB 工具組解析程式和配接器提供者架構來動態解析端點和中繼資料。
斜線。 不同于路線隨流,這些會以各種格式和傳輸接收外部訊息,例如 HTTP、JAVA Message Service (JMS) 、IBM WebSphere MQ (WMQ) 、檔案傳輸通訊協定 (FTP) 、一般檔案和 XML。 它們通常是BizTalk Server接收位置,選擇性地使用 Microsoft BizTalk ESB 工具組 Interop 管線元件和 Microsoft BizTalk ESB 工具組解析程式和配接器提供者架構來動態解析端點和中繼資料。
斜線。 這些會實作使用 WCF、JMS、WMQ、FTP、HTTP、一般檔案、XML 或任何其他自訂格式等格式傳遞訊息的傳送埠。 它們通常是BizTalk Server動態傳送埠,這些埠會直接系結至訊息方塊,並選擇性地使用 Microsoft BizTalk ESB 工具組 Interop 管線元件和 Microsoft BizTalk ESB 工具組解析程式和配接器提供者架構來動態解析端點和中繼資料。
例外狀況管理架構。 這包括例外狀況 Web 服務、例外狀況管理 API,以及擴充、處理及傳遞例外狀況詳細資料至 ESB 管理入口網站的元件。
ESB 管理入口網站。 此範例應用程式提供登錄布建、例外狀況流量分配、警示通知和分析。
其中許多元件和服務都依賴BizTalk Server實作的功能,例如協調流程、轉換和商務規則引擎和訊息方塊資料庫。 圖 1 顯示類別的圖解檢視、每個類別中通常會發生的元件和服務,以及 Microsoft BizTalk ESB 工具組所使用的核心BizTalk Server系統元件。
圖 1
Microsoft BizTalk ESB 工具組的架構和元件
BizTalk ESB 工具組的運作方式
Microsoft BizTalk ESB 工具組接受輸入訊息,並對其運作,可能是透過執行轉換、路由或任何其他自訂定義的進程, (但不一定) 。 若要指定所需的作業,核心處理元件需要每個訊息都有一個傳閱名單,其中包含相關聯的指令或中繼資料,這些指示會定義要套用的進程,以及使用訊息內容執行的工作。 這些傳閱名單稱為路線,並可自動解析、從中央存放庫擷取,並在隨升道收到訊息時附加至訊息。
此傳閱名單方法可在服務之間提供鬆散結合,這表示 ESB 不需要事先瞭解每個訊息的特定處理。 它只需要知道可能的進程範圍,以及如何套用每個進程。 指定可用進程和訊息內指令之間的對應的各種選項提供彈性的機制來設定和調整行為,而不需要變更程式碼和重新部署元件。
設計模式
ESB 使用的架構,其中處理訊息箱資料庫中的儲存訊息,以及訂閱者會根據訊息中的處理指示來挑選訊息,有效地實作狀態機器設計模式。 此外,ESB 會以服務導向的方式實作並公開其核心功能,包括透過一組核心 Web 服務向外部應用程式。
這種鬆散結合的方法來設計BizTalk Server和 Microsoft BizTalk ESB 工具組型應用程式會產生高度彈性的解決方案,並已成為業界可接受的最佳做法。