無限ノック › DOP 練習問題一覧 › 問題
DOPインシデントとイベントへの対応

ある金融サービス企業が SQS Standard キューをイベントソースとする Lambda 関数で決済トランザクションを処理しています。Lambda 関数は下流の決済処理 API を呼び出しますが、この API は最大 28 秒かかることがあります。現在の設定は以下の通りです。 ・Lambda タイムアウト:30 秒 ・SQS キューの可視性タイムアウト(Visibility Timeout):30 秒 ・DLQ(Dead Letter Queue:処理失敗メッセージの退避キュー):未設定 負荷テスト中に以下の問題が確認されました。 ①一部の決済が二重請求されている ②下流 API が完全停止中、Lambda が繰り返し失敗しているにもかかわらず失敗数や失敗したトランザクション内容を把握する手段がなく、メッセージが保持期限切れ後に警告なく消失するリスクがある これらの問題の根本原因と正しい修正策の組み合わせはどれですか?

A
根本原因:Lambda の同時実行数制限によるスロットリングでメッセージ処理が遅延している。修正策:Lambda の予約済み同時実行数を増やし、CloudWatch アラームでスロットリングメトリクスとエラー率を継続監視する。
Lambdaスロットリングは処理遅延の一因になり得ますが、二重請求や失敗メッセージ消失の根本原因ではありません。可視性タイムアウトのレースコンディションもDLQ未設定による追跡不能も解消しません。
B
根本原因:可視性タイムアウトが Lambda タイムアウトと同値のため、処理中にメッセージが再可視化され別の Lambda が同じメッセージを処理し二重請求が起きる。DLQ 未設定で失敗メッセージも追跡できず消失する。修正策:可視性タイムアウトを Lambda タイムアウトの6倍(180秒)にし、リドライブポリシーと DLQ を設定して DLQ 滞留数に CloudWatch アラームを設定する。
✓ 正解
Lambdaタイムアウトと可視性タイムアウトが同値のため、処理中にメッセージが再可視化され別インスタンスが処理して二重請求が発生します。可視性タイムアウトを6倍(180秒)にし、DLQとリドライブポリシー+CloudWatchアラームで失敗を可視化できます。
C
根本原因:SQS Standard キューはメッセージ配信順序を保証せず少なくとも1回配信のため重複配信が発生する。修正策:コンテンツベース重複排除を有効にした SQS FIFO キューへ移行し、メッセージグループ単位で処理順序を保証する。
SQS FIFOとコンテンツベース重複排除は短時間内の重複送信を排除しますが、可視性タイムアウトのレースコンディションという根本原因は解消せず、キューアーキテクチャの大幅変更も伴います。
D
根本原因:Lambda 関数に冪等性(idempotency:同じ操作を何度実行しても同じ結果になる性質)の実装がなく、同一メッセージが再処理された際に決済 API が再度呼び出されてしまう。修正策:DynamoDB の条件付き書き込みで処理済みメッセージ ID を記録し、すでに処理済みの決済リクエストを検出してスキップすることで二重請求を確実に防止する。
冪等性の実装は重複処理への有効な防御ですが、根本原因である可視性タイムアウト設定を修正しておらず、DLQ未設定による失敗メッセージの追跡不能・消失リスクも解決しません。

解説

正解の根本原因は、可視性タイムアウト(30秒)が Lambda タイムアウト(30秒)と同値である点です。 AWS は可視性タイムアウトを Lambda 関数タイムアウトの少なくとも6倍に設定することを推奨しています(30秒×6=180秒)。同値の場合、API が最大28秒かかる処理の途中でメッセージが SQS キューで再び可視状態となり、別の Lambda インスタンスが同じメッセージを処理して二重請求が発生します。また DLQ とリドライブポリシーがないと、失敗メッセージはデフォルト保持期間(4日)経過後に警告なく削除されます。DLQ の滞留数(ApproximateNumberOfMessagesVisible)に CloudWatch アラームを設定することで失敗の可視性が確保されます。 選択肢Aは、Lambda スロットリングは処理遅延の一因ですが二重請求や失敗メッセージ消失の根本原因ではありません。 選択肢Cは、FIFO のコンテンツベース重複排除は短時間の重複を排除するだけで、可視性タイムアウトのレースコンディションを解消せず大幅なアーキテクチャ変更も要します。 選択肢Dは、冪等性の実装は有効な防御ですが根本原因を修正しておらず、DLQ 未設定による失敗メッセージ追跡・消失リスクも残ります。

ドメイン別正答率・予想スコアでリアルタイムに実力把握

無限ノックでDOPを徹底対策。全問AI生成のオリジナル問題。

無料で演習を始める →
← DOP の問題一覧に戻る