Lambda由于容器刷新而超时

问题描述 投票:0回答:1

我已经浏览了该站点,但是无法找到我的问题的根本原因。

我们有一个lambda,它将每50秒运行一次。 Lambda的第一次运行是冷启动。在开始过程中,准备了lambda的所有必需依赖项(所有接口)。Lambda处理程序将具有自己的代码,以与SQS和SWF进行交互。在第一次从云监视日志运行期间,很明显它正在读取基本文件以获取所有服务。然后lambda处理程序将启动。从第二次运行开始,只有lambda处理程序将在50秒后被调用。到目前为止,一切进展顺利。突然之间,我们发现lambda花费了超过50秒的时间(通常在10秒以下结束)。日志显示lambda超时了,它刚开始重新初始化所有依赖项。

这没有给我们任何提示,因为在超时之后,后续运行很顺利。看到lambda超时是不好的。绝对lambda代码没有错误。

这可能是容器问题吗?容器是否有任何时间段可以保持数据活动直到达到到期时间。

我们能否访问容器对象以查找更多信息?我们有2个或更多开发环境。对于不同的环境,此行为是不同的。每隔3天就会发生一次。一天中的某个时间会发生三次。

如果我们想了解容器对象的属性,我们该怎么做?它是仅AWS可以访问的灰色区域吗? Lambda代码是使用Net Core App 2.0以c#编写的。想到在调用期间检查此lambda的云跟踪日志。我也找不到超时的原因。

我们在每个不同的区域都有20多个lambda用于开发,十个用于测试。目前尚不清楚哪个lambda会超时。

任何建议或想法都会对我有很大帮助?????

谢谢。

我已经浏览了该站点,但无法找到我的问题的根本原因。我们有一个lambda,它将每50秒运行一次。 Lambda的第一次运行是冷启动。在开始过程中,所有...

amazon-web-services aws-lambda timeout containers refresh
1个回答
0
投票

Lambda容器不会无限期地存在。如果偶尔看到“冷启动”,那是正常现象。如果您一次只运行1次调用(即,您只有一个lambda实例),您仍然可以期望每隔几个小时就回收一次容器。总的来说,我了解到AWS试图给我们更少的冷启动,但是您仍然可以期待不时获得一个新的容器和新的冷启动。


推荐问答