Microsoft BizTalk Server 為應用程式整合和商務程式管理 (BPM) 提供開發和運行時間環境。 本教學課程提供使用 BizTalk Server 設定及部署企業應用程式整合 (EAI) 解決方案的端對端練習。
商務案例
Contoso 是銷售計算機硬體和軟體的在線商店。 該公司最近購買了企業資源規劃(ERP)系統來管理其資源。 在本教學課程中,您將使用 BizTalk Server 開發企業應用程式整合 (EAI) 解決方案,將現有的倉儲系統整合至 ERP 系統,並將倉儲要求程式自動化。
此整合解決方案有數個挑戰:
訊息傳輸。 倉儲系統和 ERP 系統可以位於兩個不同的平臺上,並使用不同的傳輸通訊協議來傳送和接收訊息。 此解決方案必須使用傳送系統支援的通訊協定接收訊息,並使用接收系統支援的通訊協定轉寄訊息。 BizTalk Server 會使用 配接器 來傳輸訊息。 有許多原生配接器隨附於 BizTalk Server 安裝和 BizTalk 配接器套件。 如需其他配接器,您可以從廠商購買,或使用 BizTalk Server 所提供的配接器架構自行開發。 如需配接器的詳細資訊,請參閱 BizTalk Server 中的配接器。
訊息轉換。 有許多訊息類型,例如 eXtended Markup Language (XML)、電子數據交換(EDI)、分隔的檔案等等。 BizTalk Server 是以 XML 為中心的。 在大部分情況下,您會先將輸入訊息轉換成 XML。 此程序稱為 解析。 在輸出端,您可以將訊息從 XML 轉換成其他類型。 此程序稱為 串行化。
商務程式管理。 大部分的 EAI 案例不僅僅是將訊息從一個系統轉送到另一個系統。 它們通常涉及更多系統和複雜的工作流程。 在此案例中,倉儲會傳送要求庫存補充的訊息;您的解決方案會收到訊息,然後檢查要求的總計。 如果總計超過特定金額,解決方案會自動拒絕要求,並傳送拒絕訊息:否則,解決方案會將要求轉送至 ERP 系統。
下圖說明商務程式:
在本教學課程中,您會使用 BizTalk Server 開發工具來設計和部署商務程式。
準備
建立 BizTalk Server 整合解決方案之前,您必須先收集一些基本資訊:
BizTalk Server 解決方案需要整合多少個應用程式/系統? 在此案例中,有兩個系統:ERP 和倉儲。
每個應用程式支援的傳輸通訊協定? 為了簡化解決方案,我們假設這兩個應用程式都使用檔案。 倉儲系統會將請求儲存為檔案,放在資料夾中。 BizTalk Server 解決方案會從資料夾挑選檔案、處理檔案,然後將要求卸除給 ERP 系統監視的另一個資料夾。
應用程式所使用的訊息類型為何? 為了簡化解決方案,我們假設這兩個應用程式都使用 XML 類型。 BizTalk 架構是定義 BizTalk 訊息中 XML 資料結構的檔,其用途是建立用於處理和驗證 XML 訊息的範本。 BizTalk Server 隨附 BizTalk 編輯器來建立 BizTalk 架構。
什麼是商務程式? 此過程已在先前的標題中說明。
BizTalk Server 架構
瞭解 BizTalk Server 如何執行解決方案是很有幫助的。 下圖顯示透過 BizTalk Server 的數據流。
(倉儲系統會將請求放入檔案資料夾。)
BizTalk Server 接收位置是使用檔案配接器和 XML 傳輸管線來設定。 檔案配接器會定期從檔案資料夾檢查檔案。 收到訊息之後,BizTalk Server 傳訊引擎會透過管線推送訊息。 由於要求訊息採用 XML 格式,因此在此情況下會使用 XML 傳輸管線。 XML 傳輸管線可確保訊息是格式正確的 XML 檔案。 然後訊息會儲存至 MessageBox 資料庫。
當協調流程引擎注意到訊息已準備好由協調流程處理時,它會具現化協調流程的實例。 協調流程引擎會根據訊息的總計,將要求訊息或拒絕要求訊息儲存至 MessageBox 資料庫。
同樣地,根據要求訊息或要求拒絕訊息,傳訊引擎會使用其中一個傳送埠來處理訊息。 傳訊引擎會先透過 XML 傳輸管線推送訊息,然後使用檔案配接器根據傳送埠組態將訊息傳送至不同的檔案資料夾。
(倉儲系統和 ERP 系統監視指定的資料夾以取得訊息。