金融サービス会社が、Python 3.11で実装された決済処理Lambda関数を運用しています。この関数は起動時に大型の暗号化ライブラリをインポートするため、コールドスタート時の初期化に4〜5秒かかります。SLAとして99%のリクエストを500ms以内に処理する義務があり、現在SLA違反が発生しています。トラフィックは平日9:00〜18:00に集中し、夜間はほぼゼロです。この問題を解決するために開発者が取るべき最も適切な対応はどれですか?
プロビジョンドコンカレンシーは、指定した数のLambda実行環境を事前に初期化した状態で待機させる機能です。リクエストが到着した際に初期化済みの環境が即座に応答するため、コールドスタートが発生しません。Application Auto Scalingのスケジュールスケーリングと組み合わせることで、平日業務時間前に自動でスケールアップし、夜間はコストを抑えるためにゼロにスケールダウンできます。 選択肢Bのリザーブドコンカレンシーは関数に割り当てる同時実行数の上限を設定するものであり、実行環境を事前初期化する機能はなく、コールドスタートを防ぐことができません。 選択肢CのメモリはvCPU割り当てを増やして初期化を多少短縮できる場合がありますが、4〜5秒のコールドスタートを500ms以内に削減することは困難で、根本的な解決策にはなりません。 選択肢DのLambda SnapStartはJava 11以降・Python 3.12以降・.NET 8以降のランタイムで利用可能ですが、この関数が使用するPython 3.11には対応していないため使用できません。