DVAトラブルシューティングと最適化

Java製のLambda関数を使用したAPI Gatewayバックエンドがあります。APIの応答時間要件は1秒以内ですが、数分間リクエストがない状態の後の最初のリクエストで5〜8秒のレイテンシが発生しています。これはコールドスタート(Lambdaの新規実行環境の初期化にかかる時間)が原因です。この問題を最も効果的に解決する方法はどれですか?

A
Lambda関数のメモリを256MBから10,240MBに増加させて初期化時間を短縮する
メモリ増加は初期化を若干高速化しますがコールドスタート自体は発生します。
B
Lambda関数エイリアスにProvisioned Concurrencyを設定して実行環境を事前初期化する
✓ 正解
Provisioned Concurrencyは指定した数のLambda実行環境を常に初期化済み・温機状態に保つため、コールドスタートを完全に排除できます。5〜8秒のレイテンシを1秒以内の要件に適合させることができます。
C
Lambda関数にReserved Concurrency(予約済み同時実行)を50に設定する
Reserved Concurrency は最大同時実行数を制限するのみで温機化はしません。
D
Lambda関数をコンテナイメージとしてパッケージ化してAmazon ECRに保存する
コンテナイメージはむしろコールドスタートが長くなる傾向があります。

解説

Provisioned Concurrencyは指定した数のLambda実行環境を常に初期化済み・温機状態に保つため、コールドスタートを完全に排除できます。5〜8秒のレイテンシを1秒以内の要件に適合させることができます。 選択肢Aのメモリ増加は初期化を若干高速化しますがコールドスタート自体は発生します。 選択肢CのReserved Concurrencyは最大同時実行数を制限するのみで温機化はしません。 選択肢Dのコンテナイメージはむしろコールドスタートが長くなる傾向があります。

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

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

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