減少傳輸類型與處理
在服務導向解決方案中,清除線段經常存在於商務程序與特定的傳輸及接收訊息之間。 這讓您能單獨變更解決方案的商務程序或訊息部分。
服務導向解決方案會在某個地方違反此設計原則。 本節將描述此情況、可能的替代方案以及選取的結構。
相互關聯與 MQSeries 配接器
為了使用 MQSeries 配接器,您無法使用標準的 BizTalk Server 相互關聯識別碼。 這是因為相互關聯識別碼會進入 IBM 後端系統,而該系統會有自己的相互關聯識別碼系統。 相反地,您必須使用 MQSeries.MQMD_CorrelId 和 MQSeries.MQMD_MsgID 屬性。 使用這些屬性會潛在地將傳輸專用的資訊置於協調流程與商務程序中。
處理此相依性的一種方法便是使用 BizTalk Server 相互關聯識別碼,並使用自訂管線元件來轉譯 MQSeries 的相互關聯識別碼。 這會增加實例的複雜度。 此外,若傳輸變更時,必須變更兩個管線元件。 而且,最後它會重新定位相依性 (位於管線元件中),而不是解析它。
另一個選項便是隔離 MQSeries 專用的相互關聯處理,以隔離協調流程及呼叫該協調流程。 這會保留商務程序的獨立性。 不過,這會在協調流程之間引入編譯階段相依性。 修改傳輸需要重新編譯兩個協調流程 (例如,從虛設常式到解決方案的配接器版本)。 該呼叫也會增加解決方案的回應時間。
為了避免增加額外的複雜度和可能降低效能,直接在協調流程中使用 MQSeries 相互關聯似乎是最簡易的。
如需協調流程中配接器和相互關聯的詳細資訊,請參閱MQSCorrelationSetOrchestration (BizTalk Server 範例) 。
另請參閱
服務導向解決方案的實作重點
MQSCorrelationSetOrchestration (BizTalk Server 範例)