Azure Service Bus で注文処理ワークフローを設計しています。同じ OrderID のすべてのメッセージは厳密な FIFO 順序で処理される必要があり、ワークフローの段階を追跡するために、メッセージ間で注文ごとの状態を維持する必要があります。どうすればよいですか?
解答を選択
オプションをタップして解答を確認してください。
正解: ターゲットキューまたはサブスクリプションで RequiresSession を有効にします。, 注文内のすべてのメッセージの SessionId を OrderID に設定します。, SessionReceiver でメッセージを受信し、GetState/SetState を使用して注文ごとのワークフロー状態を永続化します。.
これが解答である理由
Azure Service Busで厳密なFIFO順序とセッションごとの状態管理を実現するには、セッション機能を利用します。まず、ターゲットのキューまたはサブスクリプションでRequiresSessionを有効にすることで、Service Busがセッションベースのメッセージ処理を強制するようになります。次に、同じOrderIDを持つすべてのメッセージに同じSessionIdを設定することで、これらのメッセージが特定のセッションにグループ化され、そのセッション内でFIFO順序が保証されます。最後に、SessionReceiverを使用してメッセージを受信し、GetState/SetStateメソッドでセッションの状態を永続化することで、注文ごとのワークフロー状態を追跡できます。MessageIdをOrderIDに設定してもFIFO順序は保証されず、メッセージの遅延は順序保証には適していません。
試験に合格 — 終わりのない解答探しなしで
この試験のすべての検証済み問題と解説を1か所で入手し、準備時間を大幅に節約しましょう。1,000以上の認定 · 20以上の言語 · 無料で開始。
試験に早く合格する → カード不要