DVAトラブルシューティングと最適化
金融系アプリケーションでトレード注文を処理するLambda関数がある。この関数はVPC内に配置され、機械学習ライブラリを含む500MBのデプロイパッケージを持つ。毎朝9:30の市場オープン時に多数のリクエストが集中し、コールドスタートにより5〜10秒の遅延が業務上の問題となっている。この問題を解決する最も効果的な方法はどれか?
ALambda関数のメモリを10GBに増やしてCPU割り当てを最大化し、初期化コードの実行を高速化することでコールドスタートを軽減する
Lambda関数のメモリを10GBに増やすことは初期化をわずかに高速化するが根本解決にはなりません。
BLambda関数の本番エイリアスにProvisioned Concurrencyを設定し、事前に指定した数の実行環境を初期化された状態で維持する
✓ 正解
Provisioned Concurrency(プロビジョニングされた同時実行)は指定した数のLambda実行環境を事前に初期化して待機状態に保つ機能で、コールドスタートを排除できます。毎朝9:30のピーク時に初期化済みの環境を提供することで、5〜10秒の遅延を解決できます。
CLambda関数にReserved Concurrency 100を設定し、他の関数との競合を防いで最大同時実行数を100に制限する
Reserved Concurrency 100は最大同時実行数を制限するものでコールドスタートには無効です。
DLambda関数をコンテナイメージ形式でデプロイし、500MB超の大規模ライブラリを含む関数のパッケージング制約を解消する
Lambda関数をコンテナイメージ形式でデプロイすることは通常コールドスタートが長くなる傾向があります。
解説
選択肢BのProvisioned Concurrency(プロビジョニングされた同時実行)は指定した数のLambda実行環境を事前に初期化して待機状態に保つ機能で、コールドスタートを排除できます。毎朝9:30のピーク時に初期化済みの環境を提供することで、5〜10秒の遅延を解決できます。
選択肢AのLambda関数のメモリを10GBに増やすことは初期化をわずかに高速化しますが、VPCアタッチ処理や大容量パッケージのロードによる根本的な遅延は解消されません。
選択肢CのReserved Concurrency 100は最大同時実行数を100に制限するものであり、コールドスタートの発生を防ぐ機能はありません。
選択肢DのLambda関数をコンテナイメージ形式でデプロイすることは500MBのパッケージには適していますが、コールドスタートはむしろ長くなる傾向があります。
ドメイン別正答率・予想スコアでリアルタイムに実力把握
無限ノックでDVAを徹底対策。全問AI生成のオリジナル問題。
無料で演習を始める →