Aws lambda lambda函数偶尔出现连接超时
我不知道为什么,但有时-每20个lambda呼叫中,我会收到一个错误:Aws lambda lambda函数偶尔出现连接超时,aws-lambda,Aws Lambda,我不知道为什么,但有时-每20个lambda呼叫中,我会收到一个错误: Connection timed out after 120000ms 调用是从ECS容器中完成的,所有调用(caller和lambda)都写在node.js中 我应该检查什么 我知道这是一篇老文章,但我会写下我是如何解决一个问题的,在我正在处理的lambda中出现了相同的错误消息。我希望这能帮助有类似问题的人 在我的例子中,EC2中还有一个web应用程序,它通过lambda.invoke()(npm aws sdk)调用
Connection timed out after 120000ms
调用是从ECS容器中完成的,所有调用(caller和lambda)都写在node.js中
我应该检查什么
我知道这是一篇老文章,但我会写下我是如何解决一个问题的,在我正在处理的lambda中出现了相同的错误消息。我希望这能帮助有类似问题的人 在我的例子中,EC2中还有一个web应用程序,它通过
lambda.invoke()
(npm aws sdk)调用lambda。EC2和lambda都在Node.JS上运行。即使错误记录在EC2中,消息也会由lambda本身抛出给调用方(EC2)
我的lambda向API发出约3000个请求,需要约5分钟(300000毫秒)才能返回所有响应。lambda Node.JS运行时似乎在lambda执行期间保持套接字活动,该时间高于120000毫秒(2分钟)。当lambda代码持续运行超过此阈值时,运行时抛出错误,lambda返回一个回调
根据,AWS对象有一个http超时参数:
httpOptions(map)-传递给低级HTTP请求的一组选项。目前支持的选项有:
- 超时[整数]-将套接字设置为在套接字上不活动的超时毫秒后超时。默认为两分钟(120000)
AWS.config.update({httpOptions: {timeout: 360000}});
内存泄漏?你有没有想过用X光检查你的代码计时?在呼叫应用程序中内存泄漏?调用应用程序是一种执行lambdas的cron作业。我不知道这项服务,实际上我想的是Lambda内存泄漏,这就是我不理解的。此错误来自调用app。这不是“来自lamdda函数”,而是您的代码在试图调用Lambda函数时调用的AWS API。您需要在ECS端查看您的网络问题。