AWS認定資格 WEB問題集&徹底解説
デベロッパー–アソシエイト
解説
正解は A、B です。
AWS KMS には API 呼び出しのレート制限(スロットリング)があり、短時間に大量の暗号化リクエストが発生するとThrottlingException が発生します。これを解決するには以下の 2 つのアプローチが最も効果的です。
選択肢 A(正解):リクエストレートを制御し、指数バックオフ(Exponential Backoff)とリトライを実装することは、AWS が推奨するスロットリング対処のベストプラクティスです。一時的なスロットリングに対して安全に再試行できる構造を持たせることで、エラーの影響を最小化できます。
選択肢 B(正解):AWS Encryption SDK のデータキーキャッシング機能を使用すると、一度生成したデータキーを一定時間または一定件数のメッセージに再利用できます。これにより AWS KMS に対する GenerateDataKey の呼び出し回数を大幅に削減でき、スロットリングの根本的な解決策となります。
選択肢 C(不正解):CloudTrail のログを CloudWatch Logs に送信することは、KMS の呼び出し状況を可視化・監視するためには有効ですが、ThrottlingException の発生そのものを防ぐまたは解消する直接的な手段ではありません。問題の解決策にはなりません。
選択肢 D(不正解):Lambda の同時実行数を増やすと、並列で AWS KMS を呼び出す処理がさらに増加し、スロットリングを悪化させる可能性があります。ThrottlingException の解決策として逆効果であり、不適切です。
AWS KMS には API 呼び出しのレート制限(スロットリング)があり、短時間に大量の暗号化リクエストが発生するとThrottlingException が発生します。これを解決するには以下の 2 つのアプローチが最も効果的です。
選択肢 A(正解):リクエストレートを制御し、指数バックオフ(Exponential Backoff)とリトライを実装することは、AWS が推奨するスロットリング対処のベストプラクティスです。一時的なスロットリングに対して安全に再試行できる構造を持たせることで、エラーの影響を最小化できます。
選択肢 B(正解):AWS Encryption SDK のデータキーキャッシング機能を使用すると、一度生成したデータキーを一定時間または一定件数のメッセージに再利用できます。これにより AWS KMS に対する GenerateDataKey の呼び出し回数を大幅に削減でき、スロットリングの根本的な解決策となります。
選択肢 C(不正解):CloudTrail のログを CloudWatch Logs に送信することは、KMS の呼び出し状況を可視化・監視するためには有効ですが、ThrottlingException の発生そのものを防ぐまたは解消する直接的な手段ではありません。問題の解決策にはなりません。
選択肢 D(不正解):Lambda の同時実行数を増やすと、並列で AWS KMS を呼び出す処理がさらに増加し、スロットリングを悪化させる可能性があります。ThrottlingException の解決策として逆効果であり、不適切です。
関連サービスの解説
AWS Key Management Service (AWS KMS)+ 質問 / コメント
解答・解説に疑問がある場合や、よりよい解説がある場合など、お気軽にコメントください。ただし、短文コメントは表示されません。また、中傷などコメントの内容によっては、会員機能を停止させて頂きます。教え学び合える場になれば嬉しいです。(コメント投稿にはログインが必要です)
正答率 40%
No.20 解説
あるフィンテック企業では、複数のマイクロサービスが生成するトランザクションデータを、AWS Lambda を使って AWS KMS でリアルタイムに暗号化し、下流の分析サービスへ送信するアーキテクチャを採用している。このアーキテクチャが本番環境にリリースされてから、Lambda 関数のログに AWS KMS に対する ThrottlingException エラーが頻繁に記録されるようになった。開発者はこの問題を最も効果的な方法で解決する必要がある。
この問題を解決するために取るべき対応を 2 つ選びなさい。
この問題を解決するために取るべき対応を 2 つ選びなさい。
- AWS KMS への API 呼び出しレートを下げ、指数バックオフとリトライのロジックを実装する
- AWS Encryption SDK のデータキーキャッシング機能を利用し、AWS KMS への呼び出し回数を削減する
- AWS CloudTrail のログを Amazon CloudWatch Logs に送信し、KMS 呼び出しの傾向を可視化する
- Lambda 関数に割り当てる同時実行数の上限を引き上げ、処理スループットを向上させる