共用方式為


最佳化 MSMQ 配接器的效能

MSMQ 配接器的最佳化在傳送端與接收端之間各有不同。 您可以藉由設定接收位置上的屬性,來控制接收端上的最佳化。 在傳送端上,您可以使用協調流程來控制最佳化。

接收最佳化

在接收端上,您可以讓配接器使用單一執行緒。 配接器是否使用單一線程或多個執行緒,取決於接收位置上 [已排序處理 ] 屬性的設定,如下所示:

  • 當 屬性為 True時,配接器會在單一線程上運作。 這將限制配接器一次只能處理一個訊息並節省記憶體。 請注意,不論屬性工作表中指派的值為何,這都會有效地將 Batch Size 設定為 1 (1) 。

  • 排序處理False時,配接器會執行多個執行緒,而且可以一次處理多個訊息,因而增加效能。

    如果您在管理伺服器資源上放置進階,或是訊息的數目或大小可能會耗盡可用的記憶體,則必須將 [已排序處理 ] 設定為 True

    您也可以藉由減少接收位置上的 Batch Size 值來控制記憶體使用量。 批次大小越小,會在記憶體中保留的訊息就越少,因此會用到的記憶體也會比較少。

    將傳送埠和接收位置放置在不同的電腦上,也可以減少記憶體的使用。

傳送最佳化

在傳送端上,您可以使用範例協調流程來達成相等的單一訊息處理。 此範例會傳送單一訊息,然後等待傳送下一個訊息,直到它收到通知為止。 如需詳細資訊,請參閱 如何建立 MSMQ 接收位置和從程式碼傳送埠

遠端交易式讀取作業

有了BizTalk Server MSMQ 配接器就能夠從交易式 MSMQ 佇列進行遠端讀取作業。 這是因為 MSMQ 4.0 和更新版本支援遠端交易式讀取作業。 不過,交易式讀取作業通常是緩慢的作業。 若要最佳化效能,則應該只在沒有其他選擇的情況下使用這類作業。

另請參閱

如何設定 MSMQ 接收位置
如何設定 MSMQ 傳送埠
設定 MSMQ 配接器