3

次のシナリオが Azure Service Bus でどの程度サポートされているかを知りたいです。

ワーカー サーバーが不明な数の Web サーバーにイベントを通知する 各 Web サーバーがメッセージを処理する (処理には 10 ~ 30 分かかります) すべての Web サーバーが最初のメッセージの処理を完了すると、すべての Web サーバーが新しいメッセージを受信する必要があります。イベント。基本的に、各 Web ロールで長時間実行されるジョブを実行した後、多数の Web ロールを同期しようとしています。

Azure Service Bus から "無料" で取得できるのはどれくらいですか?

4

4 に答える 4

3

Azure Service Bus には、要件の Pub/Sub 側面と要求/応答相関の両方に役立つ豊富なメッセージング機能が多数あります。ここでは、セッション (グループ化/関連) メッセージとセッション状態の概念が非常に役立ちます。以下は、役立つ可能性がある特定のリンクです。 セッションに関する MSDN の記事: http://msdn.microsoft.com/en-us/magazine/jj863132.aspx

セッションの使用例: http://code.msdn.microsoft.com/windowsazure/Brokered-Messaging-Session-41c43fb4

要求/応答のサンプル: http://code.msdn.microsoft.com/windowsazure/Brokered-Messaging-Request-0ce8fcaf

相関関係などの話: http://channel9.msdn.com/Blogs/Subscribe/Service-Bus-Messaging-Deep-Dive

于 2013-03-08T18:32:47.923 に答える
2

また、最近リリースされた Service Bus Durable Task Framework のプレビューをこちらでご覧になることもできます。このフレームワークの使用方法のサンプルについては、こちらを参照してください。

基本的に、このフレームワークをセッションなどの Service Bus 機能の上で使用すると、大まかに次のようなことを行う C# オーケストレーション コードを記述できます。

            ...
            // phase 1
            List<Task> taskList = new List<Task>();
            foreach (var serverName in serverList)
            {
                taskList.Add(context.ScheduleTask<object>(typeof(ExecutePhase1OnWebServerActivity), serverName));
            }

            // wait for all of the executions to finish
            await Task.WhenAll(taskList);

            // phase 2
            taskList = new List<Task>();
            foreach (var serverName in serverList)
            {
                taskList.Add(context.ScheduleTask<object>(typeof(ExecutePhase2OnWebServerActivity), serverName));
            }

            await Task.WhenAll(taskList);
            ...
于 2013-07-02T08:02:24.247 に答える
1

私があなたの質問をどのように解釈するかに基づいて、未知の数のサーバーがすべてメッセージを処理したことを確認するまで、複雑なビットが2番目のメッセージを送信しないように思えます。

サービスバスはここで役立つパブ/サブ機能と相関機能を提供しますが、サーバーが関心を登録し、メッセージを処理したことを確認して、何かがackをカウントし、全員が2番目のメッセージが送信されます。

このオーケストレーションは、サービスバスがお手伝いできるものではありません。これにより、ワーカーロールで何かを構築したり、VMロールで使用可能な場合はBizTalkを使用したりすることができます。

登録、確認応答の追跡、およびpub subのサービスバストピックと組み合わせた新しいメッセージのWebサーバーへの公開を処理するための長期にわたるBizTalkオーケストレーションのようなものが、これを行う方法になる可能性があります。

于 2013-03-24T00:08:47.910 に答える
0

This looks to me like a combination of Workflow Foundation and Service Bus.

于 2014-02-03T12:28:20.010 に答える