Q33 — AWS DVA-C02 第2章
第 33/100 問 | ← 第2章
開発者がAWS上で大量のデータを処理するワークフロー向けのサーバーレスアプリケーションを構築しています。このワークフローでは、AWS Step Functionsのステートマシンが複数のAWS Lambda関数を呼び出します。そのうち1つのLambda関数は、リクエスト処理中に時折タイムアウトエラーにより失敗します。開発者は、タイムアウトエラーが発生した場合に、ワークフローが自動的に失敗した関数呼び出しを再試行するようにする必要があります。この要件を満たすソリューションはどれですか?
- A. Step Functionsのステートマシン定義にRetryフィールドを追加します。ステートマシンを構成し、最大再試行回数および再試行対象のタイムアウトエラーの種類を設定します。 ✓
- B. Step Functionsのステートマシン定義にTimeoutフィールドを追加します。ステートマシンを構成し、最大再試行回数を設定します。
- C. Step Functionsのステートマシン定義にFailステートを追加します。ステートマシンを構成し、最大再試行回数を設定します。
- D. Step Functionsのステートマシンを更新し、呼び出しリクエストをAmazon Simple Notification Service(Amazon SNS)トピックに送信します。SNSトピックにLambda関数をサブスクライブします。Lambda関数に対して、タイムアウトエラーの種類に対する最大再試行回数を設定します。
正解: A. Step Functionsのステートマシン定義にRetryフィールドを追加します。ステートマシンを構成し、最大再試行回数および再試行対象のタイムアウトエラーの種類を設定します。
解説
選択肢Aでは、Step Functionsのステートマシン定義内に再試行ポリシーを定義することで、タイムアウトエラー発生時に失敗した関数呼び出しを自動的に再試行できます。最大再試行回数および再試行対象のエラー種別を明示的に設定することで、タイムアウトエラーを効果的に処理できます。