2016-06-15 6 views
0

私たちはAWSラムダ関数メモリにキャッシュされたデータを持っており、私たちの開発段階で関数が使用されなくなるまでに典型的にどのくらい長くそこに留まるかを知ることは非常に便利です。私は再利用可能なコンテナデータについて具体的に話しています。参照してください:https://aws.amazon.com/blogs/compute/container-reuse-in-lambda/AWSラムダ機能は、アクティブなコールなしでメモリにどのくらいロードされますか?

答えて

2

ラムダ関数の各呼び出しは、関数の一意のインスタンスを作成します。基になるコンテナは、未知の期間()の間、持続する可能性がありますが、後続の呼び出しでデータの永続性を期待して以前の呼び出しのコンテナを再利用するとは考えられません。

ラムダ関数で呼び出しに必要なデータをロードまたは作成する場合は、それがS3でもデータベースでも、それ以外のものであれ、長期記憶域に書き込む必要があります。関数が呼び出されるたびに、フェッチされたデータをリロードする必要があります。

コンテナの再使用を明確にするために編集されています。コメントのリンクを追加したRodrigoとFrederick Cheungに感謝します。

+1

ただし、コンテナは再利用でき、破棄することはできません。 https://aws.amazon.com/blogs/compute/container-reuse-in-lambda/。 –

+1

@RodrigoMそのブログ投稿はプレビュー期間中に書かれました。彼らはその行動が変わらないことを確認しましたか?とにかく、コンテナが再利用されても、ファイルにのみ適用されるように聞こえます。コードはまだ新鮮なので、以前の実行からメモリにキャッシュされたデータは失われます。最も重要なのは、代わりに新しいものを作成するLambdaの特権なので、「覚えておいて、再利用するコンテナに依存できません。 –

+0

ありがとう、私はそれがプレビューであったのを見た。現在のすべてのドキュメントは、いくつかの再利用を参照しているようです。しかし、はい、再利用でもメモリがリセットされると予想しています。 –

関連する問題