過去問ドリル

DVA-C02:AWS Certified Developer - Associate AWS サービスを用いた開発 問10

AWS サービスを用いた開発/AWS Lambda のコード開発

複数の Lambda 関数で共通のライブラリを使い回し、各関数のデプロイパッケージを小さく保ちたいと考えています。最も適切なのはどれですか。

当サイトのオリジナル問題(DVA-C02:AWS Certified Developer - Associateの出題範囲「AWS サービスを用いた開発」に対応。実際の試験問題ではありません)

正解:B

解説

Lambda レイヤーは、共通のライブラリや依存関係を 1 つのレイヤーにまとめ、複数の関数から共有して参照できる仕組みです。各関数のデプロイパッケージからライブラリを分離できるため、パッケージを小さく保ち、共通部分の更新も一元化できます。

選択肢ごとの解説

  • A誤り。各 zip に同じライブラリを同梱すると、パッケージが肥大化し、更新のたびに全関数を作り直す必要があります。
  • B正しい。Lambda レイヤーに共通ライブラリをまとめれば、複数関数で共有でき、各パッケージを小さく保てます。
  • C誤り。起動のたびに S3 からダウンロードするのは、コールドスタートの遅延や複雑さを増やします。
  • D誤り。共通化しない個別実装は、重複と保守負担を増やします。
DVA-C02:AWS Certified Developer - Associateの問題を演習モードで解く