0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

LambdaのProvisioned Concurrency利用に関するメモ

Posted at

Lambdaのコールドスタートを回避したく、Provisioned Concurrencyを利用することとした。それに関するメモ。いじってみての所感も入っているので、間違えているかも。

設定箇所

対象Lambda関数の"設定">"同時実行と再起の検出"と進むと設定できる

設定内容

同時実行

"同時実行”を設定しただけではLambdaが起動しっぱなしにはならない。形としては、これは対象の関数が占有できる枠を抑えたにすぎない様に思う。
今回は、一つのLambdaのみ動かしておきたいので1を設定した。

プロビジョニングされた同時実行設定

これが必要。ここに追加することでLambda関数が起動しっぱなしになる。
ただ、ここで設定するためには、対象のバージョンを設定し、エイリアスを作成する必要がある。

バージョン

"バージョン"タブで設定すれば、$LATESTに対してバージョンが振られる。なので、再デプロイした時は再度バージョンを設定しないとデプロイ前の物を使い続けることになる

エイリアス

"エイリアス"タブで設定できる。上記のバージョンを指定してエイリアスを作成できる。
これは、基本的にバージョンを指定することになるので、新しいバージョンをリリースした場合は対象バージョンを変更する必要がある。

プロビジョニングされた同時実行設定(再)

そしてここに戻り、対象のエイリアスを指定して同時実行設定を追加。

API Gatewayとの接続

ここで、エイリアスを起動して同時実行として設定したところで、WebAPIを叩いてもここでは処理されない。APIGatewayの接続を、こちらに切り替える必要がある。
この設定は、以下で対応可能。

  1. エイリアスの画面で、エイリアスのARNを取得
  2. API Gatewayの対象のメソッドの”統合リクエスト”で、そのARNを設定する(差し替える)

とりあえず、上記の感じで対応できた。
これをSAMで実行したいが、それはこれからの検討。。。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?