無限ノック › SAA 練習問題一覧 › 問題
SAA高性能なアーキテクチャの設計

あるECサイト企業がAWS Lambdaを使用した決済APIを運用しています。通常時のレスポンスタイムは80〜100msですが、毎朝9時の営業開始時刻に数百件の同時リクエストが集中し、Lambda関数のコールドスタート(初回起動時の初期化処理)により一部リクエストのレスポンスタイムが3〜5秒に跳ね上がります。ピーク時でも一貫してレスポンスタイムを200ms以下に保つため、コールドスタートを根本的に排除するための最も適切な解決策はどれですか?

A
Lambda関数に割り当てるメモリを10,240MB(最大値)まで増やし、初期化処理の実行速度を向上させる
メモリ増加により CPU 割り当ても比例して増えるため処理速度は向上しますが、ランタイムや依存ライブラリの初期化処理(コールドスタートの本質)自体を排除することはできません。
B
Provisioned Concurrency(プロビジョニング済み同時実行)を設定し、指定数の実行環境を常に初期化済み状態で維持する
✓ 正解
Provisioned Concurrency は、指定した数の Lambda 実行環境を事前に初期化・ウォームアップした状態で常時維持します。リクエストが来た際にコールドスタートが発生しないため、一貫した低レイテンシを実現できます。Application Auto Scaling と組み合わせることで、毎朝9時に自動的に Provisioned Concurrency を増やすスケジュールベースの設定も可能です。
C
Reserved Concurrency(予約済み同時実行)を設定し、関数が使用できる同時実行数の上限枠をアカウント全体から確保する
Reserved Concurrency は、アカウント全体の同時実行数プールから特定の枠を予約する機能であり、他関数による圧迫は防げますが、初回起動時のコールドスタートは依然として発生します。
D
Lambda関数のタイムアウト値を30秒に延ばし、コールドスタート中のタイムアウトエラーを防ぐ
タイムアウト値の延長は、コールドスタート中のタイムアウトエラーを防ぐだけであり、コールドスタートそのものを排除せず、ユーザー体験の根本的な改善にはなりません。

解説

Provisioned Concurrency は、指定した数の Lambda 実行環境を事前に初期化・ウォームアップした状態で常時維持します。リクエストが来た際にコールドスタートが発生しないため、一貫した低レイテンシを実現できます。Application Auto Scaling と組み合わせることで、毎朝9時に自動的に Provisioned Concurrency を増やすスケジュールベースの設定も可能です。 選択肢A のメモリ増加により CPU 割り当ても比例して増えるため処理速度は向上しますが、ランタイムや依存ライブラリの初期化処理(コールドスタートの本質)自体を排除することはできません。 選択肢C の Reserved Concurrency は、アカウント全体の同時実行数プールから特定の枠を予約する機能であり、他関数による圧迫は防げますが、初回起動時のコールドスタートは依然として発生します。 選択肢D のタイムアウト値の延長は、コールドスタート中のタイムアウトエラーを防ぐだけであり、コールドスタートそのものを排除せず、ユーザー体験の根本的な改善にはなりません。

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

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

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