2016-04-14 18 views
1

私はEventHubのハイスループットアプリケーションを扱っています。 documentationによれば、単一の送信者から非常に高いスループットを達成するためには、1つのEventHubClientオブジェクトを持つ複数のメッセージファクトリを作成する必要があります。EventHub接続プール

Best Practices for performance improvements using Service Bus brokered messaging suggests複数のファクトリを作成して再利用することで、パフォーマンスが向上します。

ServiceBus接続プーリングは正式に利用できますか?

答えて

2

メッセージは両方のリンクで同じです。同じMessagingFactoryインスタンスから作成されたクライアントは、同じ基礎となるAMQPソケット接続を使用します。同じプロセスからの低スループット送信の場合、MessagingFactoryを再利用することは、サーバー側(および接続が限られたリソース)での接続が少なくなるため、完璧であり、好ましい方法です。受信機に加えて、すべてのクライアント(送信者:

  • 複数の工場:あなたがさらに下にそれが言うdocに気づいた場合ドキュメントでは、「サービスバス仲介メッセージングを使用してパフォーマンスの向上のためのベストプラクティスは、」あなたは、にリンクその)は、同じ工場で作成され、1つのTCP接続を共有します。最大メッセージスループットは、このTCP接続を経由できる操作の数によって制限されます。 1つの工場で得られるスループットは、TCPの往復時間とメッセージサイズによって大きく異なります。より高いスループット・レートを取得するには、複数のメッセージング工場
  • あなたにリンクするイベントのハブのドキュメントから同じメッセージである

を使用する必要があります。

+0

MessagingFactoryは、Microsoft.Azure.EventHubsライブラリでは使用できません。イベントハブクライアントを作成する際に基本TCP接続を再利用しようとする可能性があるため、別の方法があるかどうか知っていますか? – Tany