金融サービス企業が、AWS Lambda と Amazon API Gateway でリアルタイムの与信スコア計算 API を提供しています。平日の 9:00 に業務開始と同時に大量のリクエストが集中するため、Lambda のコールドスタート(関数の初期化処理)による初回レイテンシが問題になっています。SLA として P99 レイテンシ(99パーセンタイル、上位1%の遅いリクエストの応答時間)を 500ms 以下に保つ必要があります。最も効果的な解決策はどれですか?
プロビジョンドコンカレンシーは Lambda 関数インスタンスを初期化済みのウォーム状態で待機させ、コールドスタートを完全に排除します。Application Auto Scaling のスケジュールアクションと組み合わせることで、ピーク前(8:50)にコンカレンシーを増加させ、オフピーク時は削減してコストを最適化できます。この組み合わせが P99 レイテンシ SLA 達成に最も直接的かつ効果的です。 選択肢A の Lambda の予約済みコンカレンシー(Reserved Concurrency)を設定し、他の関数からリソースを確保してスロットリングを防ぐは、コンカレンシーの上限を確保することで他関数からのリソース奪取を防ぎますが、コールドスタート自体を防ぐ機能ではないため、初回レイテンシの問題は解決しません。 選択肢C の API Gateway のレスポンスキャッシュを有効化し、同一リクエストのレイテンシをキャッシュヒット時に削減するは、同一レスポンスを返せるリクエストには有効ですが、与信スコアはユーザーごとに異なるためキャッシュヒット率が低く、コールドスタートの根本解決になりません。 選択肢D の Lambda 関数を AWS App Runner に移行し、常時起動のコンテナでコールドスタートを排除するは、コンテナベースのサービスへの移行を伴い、アーキテクチャ変更コストが高く、Lambda の柔軟なスケーリングやコスト効率も失います。設問の要件に対して変更範囲が過剰です。