過去問ドリル

AI-200:Developing AI Cloud Solutions on Azure Azure サービスへの接続と利用 問2

Azure サービスへの接続と利用/イベント/メッセージ ベースの AI ソリューションの開発(Service Bus・Event Grid)

Azure Service Bus キューからピーク ロック(PeekLock)でメッセージを受信して処理するワーカーで、形式が壊れたメッセージが例外を起こし、処理に何度も失敗しています。こうしたメッセージは最終的にどうなり、どう扱うのが適切ですか。

当サイトのオリジナル問題(AI-200:Developing AI Cloud Solutions on Azureの出題範囲「Azure サービスへの接続と利用」に対応。実際の試験問題ではありません)

正解:B

解説

ピーク ロックで受信したメッセージは、処理を放棄したりロックの期限が切れたりするたびに、配信回数が増えます。配信回数が最大配信数(既定は10)を超えると、そのメッセージは理由 MaxDeliveryCountExceeded とともにデッドレター キュー(DLQ)に移されます。DLQ はキューごとに自動で用意されるサブキューで、メッセージは自動では削除されません。DLQ から受信し、理由(DeadLetterReason)を確認して原因を直してから再送します。

選択肢ごとの解説

  • A誤り。処理に失敗したメッセージは、すぐには削除されません。再配信されたあと、最大配信数を超えるとデッドレター キューに移されます。
  • B正しい。DLQ から受信して理由を確認し、問題を直してから再送するのが基本的な扱い方です。
  • C誤り。デッドレター キューでは有効期限は適用されず、自動で削除されることもありません。明示的に受信して完了させるまで残ります。
  • D誤り。最大配信数を超えたメッセージを DLQ に移す動作は、無効にできません。最大配信数を大きな値にすることはできますが、それで問題が解決するわけでもありません。
AI-200:Developing AI Cloud Solutions on Azureの問題を演習モードで解く