Open10
AWS Lambda メモ

Lambda は VPC 外のサービス。
VPC 内に配置することもできる。それが VPC Lambda。

Lifecycle
① ENI を生成
② コンテナを生成
③ 開発パッケージをロード
④ 開発パッケージを展開
⑤ Runtime を実行
⑥ 初期化
⑦ 関数を実行

Cold Start は ① から ⑦ まで実行される
Warm Start は ⑦ のみ実行される

Cold Start は Provisioned Concurreny オプションで対応できる

Quotas

250mb が超える Lambda Layer は S3 にアップロードし初期化処理で /tmp ディレクトリー(512mb) にロードし展開できるけど、Cold Start が 2回以上実行されることを対応して置く必要がある。

とはいえ、去年 Container Image(10gb) サポートが発表されたので、共通化が要らないかつちょっとデカイライブラリーは別々に管理した方が楽な気がする。

そして、Container Image に対する Lambda Layer サポートも今年 1月に発表されていた。

Terraform で Lambda Container を管理するサンプル