AWS Lambda在每次调用时是否会重置内存?

5

我目前正在使用Java 8与AWS Lambda相结合。就我所知,AWS Lambda被认为是一个孤立的工作单元,也就是说每个过程都可以独立完成。在这种情况下,当容器被复用时,JVM或Lambda容器本身是否具有可持续的内存,以供下一次执行使用? Lambda的内存会在每次调用时重置吗? 我似乎找不到文档中的答案。

2个回答

6
不,它不会清除内存。如果有必要,您应在函数终止之前实现自己的内存擦除过程。
在函数第一次调用之前,Lambda 会在分配给执行环境之前清洗内存。但是,Lambda 不会在同一执行环境上为相同函数的后续调用之间清洗内存,以便促进执行环境的重用。
您可以在《AWS Lambda 安全性概述》白皮书中阅读更多详细信息。 (链接)

1
Lambda 可以包含来自先前调用的缓存数据,但这并不保证,并且 AWS 不提供任何 TTL 来使缓存失效。如果您需要在所有调用中重复使用相同的数据,则这可能是有益的。然而,如果您特别需要新的调用,请确保在函数的第一步中清除缓存/重置变量等。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接