BizTalk 中的事件中樞配接器
概觀
從 BizTalk Server 2016 Feature Pack 2 開始,您可以在 BizTalk Server 與 Azure 事件中樞 之間傳送和接收訊息。
Azure 事件中樞是可高度調整的資料串流平臺,每秒可以接收和處理數百萬個事件。 什麼是事件中樞? 提供更多詳細資料。
必要條件
- 建立 Azure 事件中樞命名空間和事件中樞
- 使用容器建立 Azure Blob 儲存體帳戶
- 在您的BizTalk Server上安裝Feature Pack 2
現已建立事件中樞,您已具有傳送及接收事件所需的連接字串。
將訊息傳送至事件中心
在 BizTalk Server 管理主控台中,以滑鼠右鍵按一下 [傳送埠],選取 [新增],然後選取 [靜態單向傳送埠]。
建立傳送埠 提供一些指引。
輸入 [名稱] 。 在 [傳輸] 中,將 [類型 ] 設定為 [EventHub],然後選取 [ 設定]。
設定 Azure 帳戶 屬性:
使用 作法 登入 登入您的 Azure 帳戶 訂用帳戶 選取具有 EventHubs 命名空間的訂用帳戶 資源群組 選取具有 EventHubs 命名空間的資源群組 設定 端點 屬性:
使用 作法 Namespace 選取事件中樞命名空間,其類似 sb:// youreventhubnamespace.servicebus.windows.net/ 名稱 選取事件中樞 (在事件中樞命名空間內建立的名稱) 預設資料分割索引鍵 選擇性。 事件中樞程式設計指南 提供此金鑰的詳細資料。 驗證 命名空間存取簽章 是預設值,會自動使用建立事件中樞命名空間時所建立的 RootManageSharedAccessKey。
實體存取簽章 是在事件中樞層級建立的 SAS 原則, (不是事件中樞命名空間層級) 。
事件中樞功能概觀 將詳細說明。完成後,您的屬性看起來會像下面這樣:
選擇性。 設定 Message 屬性。 使用者定義訊息屬性的命名空間值代表對應至事件中樞訊息屬性的內容屬性命名空間。 這可以使用屬性架構來達成。
選取 [確定 ] 以儲存變更。
測試傳送埠
您可以使用簡單的檔案接收埠和位置,將訊息傳送至 Azure 事件中樞。
使用檔案配接器建立接收埠。 在您的接收位置內,將 [接收] 資料夾 設定為 C:\Temp\In\,並將檔案遮罩設定為 *.xml。
在事件中樞傳送埠屬性中,將 [篩選] 設定為
BTS.ReceivePortName == FileReceivePort
。將下列內容貼到文字編輯器中,並將檔案儲存為 EventHubMessage.xml。 這是您的範例訊息。
<Data> <DataID>DataID_0</DataID> <DataDetails>DataDetails_0</DataDetails> </Data>
啟動檔案接收位置和事件中樞傳送埠。
將EventHubMessage.xml範例訊息複製到接收資料夾, (C:\Temp\In) 。 傳送埠會將 XML 檔案傳送至事件中樞。
從事件中樞接收訊息
在 BizTalk Server 管理主控台中,以滑鼠右鍵按一下 [接收埠],選取 [新增],然後選取[單向接收埠]。
建立接收埠 提供一些指引。
輸入名稱,然後選取 [ 接收位置]。
選取 [新增],然後為接收位置 命名 。 在[傳輸] 中,從 [類型] 下拉式清單中選取[EventHub],然後選取 [設定]。
設定 Azure 帳戶 屬性:
使用 作法 登入 登入您的 Azure 帳戶 訂用帳戶 選取具有 EventHubs 命名空間的訂用帳戶 資源群組 選取具有 EventHubs 命名空間的資源群組 設定 端點 屬性:
使用 作法 Namespace 選取事件中樞命名空間,其類似 sb:// youreventhubnamespace.servicebus.windows.net/ 名稱 選取事件中樞 (在事件中樞命名空間內建立的名稱) 取用者群組 選取事件中樞內的取用者群組。 預設群組會自動建立。
事件中樞功能概觀 提供更多詳細資料。驗證 命名空間存取簽章 是預設值,會自動使用建立事件中樞命名空間時所建立的 RootManageSharedAccessKey。
實體存取簽章 是在事件中樞層級建立的 SAS 原則, (不是事件中樞命名空間層級) 。
事件中樞功能概觀 將詳細說明。完成後,您的屬性看起來會像下面這樣:
設定 檢查點 屬性。 此配接器會使用 Azure Blob 儲存體帳戶,可靠地讀取使用檢查點的事件,並從重新開機繼續。
儲存體驗證
選取驗證方法。 一般而言,建議使用共用存取簽章。 下列連結是一個很好的資源,可協助您決定適合您的案例:
關於 Azure 儲存體帳戶
使用共用存取簽章 (SAS)完成後,您的屬性看起來會像下面這樣:
設定 訊息 屬性:
使用 作法 使用者定義訊息屬性的命名空間 http://schemas.microsoft.com/BizTalk/EventHubAdapter/EventData/User
是預設架構,但您可以輸入另一個架構。 這個值代表對應至事件中樞訊息屬性的 BizTalk 訊息架構。升級使用者定義屬性 選擇性。 如果您想要的話,您可以升級這些屬性。
注意
需要升級的屬性應該在接收事件 之前 先部署屬性架構。選取 [確定 ] 以儲存您的變更。
測試您的接收設定
您可以使用簡單的檔案傳送埠來接收來自 Azure 事件中樞的訊息。
- 使用檔案配接器建立傳送埠。 在傳送埠屬性中,將 [目的地] 資料夾 設定為 C:\Temp\Out\,並將 和 [檔案名 ] 設定為 %MessageID%.xml。
- 在 [檔案傳送埠] 屬性中,將 [篩選 ] 設定為
BTS.ReceivePortName == EHReceivePort
。 - 啟動事件中樞接收位置和檔案傳送埠。
- 尋找目的地資料夾中的訊息, (c:\temp\out) 。
執行更多動作
事件中樞被視為許多其他 Azure 服務的「前端」,包括 Azure Data Lake、HD Insight 等等。 其設計目的是要處理許多訊息,並快速處理這些訊息。 深入瞭解事件中樞及其功能: