【问题标题】:AWS Lambda Functions: Will Different Triggers Reuse an Exection Enviornment?AWS Lambda 函数:不同的触发器会重用执行环境吗?
【发布时间】:2021-08-10 23:50:13
【问题描述】:

这是我知道的,或者我认为我知道的。

在 AWS Lambda 中,第一次调用函数通常称为“冷启动”——这类似于第一次启动程序。

如果您在第一次之后相对较快地进行第二次函数调用,则不会再次发生这种冷启动。这就是俗称的“热启动”

如果一个函数空闲的时间足够长,执行环境就会消失,下一个请求需要重新冷启动。

也可以有一个带有多个触发器的 AWS Lambda 函数。以下是处理 API Gateway 请求和 SQS 消息的单个函数的示例。

我的问题:当不同的事件触发器进入时,AWS Lambda 会重用(热启动)执行环境吗?还是每个事件触发器都有自己的冷启动?还是 Lambda 不保证这种行为?

【问题讨论】:

    标签: amazon-web-services aws-lambda


    【解决方案1】:

    是的,不同的触发器将使用相同的容器,因为不同触发器的执行环境相同,唯一的区别是传递给您的 Lambda 的事件。

    您可以通过使用两种类型的触发器(即 API 网关和简单的 Lambda 控制台上的测试函数)执行 Lambda 并查看 CloudWatch 日志来验证这一点。每个 Lambda 容器都会在您的 Lambda 日志组内创建自己的日志流。您应该看到两个事件日志都进入了同一个日志流,这意味着第二个事件成功地使用了第一个事件创建的暖容器。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-05-16
      • 2016-12-07
      • 2016-10-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-10
      • 1970-01-01
      相关资源
      最近更新 更多