DVA-C02:AWS Certified Developer - Associate AWS サービスを用いた開発 問13
AWS サービスを用いた開発/AWS でホストされるアプリのコード開発Amazon SQS をポーリングするコンシューマーで、メッセージが無いときの空の受信応答が多く、API 呼び出し回数とコストが無駄に増えている。最も適した対処はどれか。
当サイトのオリジナル問題(DVA-C02:AWS Certified Developer - Associateの出題範囲「AWS サービスを用いた開発」に対応。実際の試験問題ではありません)
- Aショートポーリングの間隔をさらに短くする
- Bロングポーリングを有効にする(メッセージが到着するまで一定時間待ってから応答させ、空受信を減らす)
- C可視性タイムアウトを 0 にする
- Dキューを FIFO に変更する
正解:B
解説
SQS のロングポーリングは、メッセージが到着するまで最大 20 秒待ってから応答するため、空の受信応答と API 呼び出し回数を減らし、コストを下げられます。ショートポーリングの短縮は逆効果、可視性タイムアウトは重複処理制御、FIFO化は順序保証であり、空受信削減の手段ではありません。
下線の用語は 用語集 で意味を確認できます。
選択肢ごとの解説
- A誤り。ショートポーリングを短縮すると空受信と呼び出しがさらに増えます。
- B正しい。空受信を減らしコストを下げるのはロングポーリングです。
- C誤り。可視性タイムアウトは重複処理の制御で、空受信の削減ではありません。
- D誤り。FIFO化は順序保証の話で、空受信の削減ではありません。