あるECサイト企業がAWS Lambdaを使用した決済APIを運用しています。通常時のレスポンスタイムは80〜100msですが、毎朝9時の営業開始時刻に数百件の同時リクエストが集中し、Lambda関数のコールドスタート(初回起動時の初期化処理)により一部リクエストのレスポンスタイムが3〜5秒に跳ね上がります。ピーク時でも一貫してレスポンスタイムを200ms以下に保つため、コールドスタートを根本的に排除するための最も適切な解決策はどれですか?
Provisioned Concurrency は、指定した数の Lambda 実行環境を事前に初期化・ウォームアップした状態で常時維持します。リクエストが来た際にコールドスタートが発生しないため、一貫した低レイテンシを実現できます。Application Auto Scaling と組み合わせることで、毎朝9時に自動的に Provisioned Concurrency を増やすスケジュールベースの設定も可能です。 選択肢A のメモリ増加により CPU 割り当ても比例して増えるため処理速度は向上しますが、ランタイムや依存ライブラリの初期化処理(コールドスタートの本質)自体を排除することはできません。 選択肢C の Reserved Concurrency は、アカウント全体の同時実行数プールから特定の枠を予約する機能であり、他関数による圧迫は防げますが、初回起動時のコールドスタートは依然として発生します。 選択肢D のタイムアウト値の延長は、コールドスタート中のタイムアウトエラーを防ぐだけであり、コールドスタートそのものを排除せず、ユーザー体験の根本的な改善にはなりません。