当前位置 : 主页 > 网页制作 > Nodejs >

node.js – AWS Lambda函数执行停止

来源:互联网 收集:自由互联 发布时间:2021-06-16
我正在执行具有以下配置的lambda Nodejs函数: 1)最大内存:512 Mb 2)超时:20秒 单次执行的内存消耗:100 Mb 执行单个功能大约需要100 Mb. 我注意到了什么: Lambda函数多次执行时,消耗的内存
我正在执行具有以下配置的lambda Nodejs函数:

1)最大内存:512 Mb

2)超时:20秒

单次执行的内存消耗:100 Mb

执行单个功能大约需要100 Mb.

我注意到了什么:

Lambda函数多次执行时,消耗的内存不断增加,从100 Mb增加到128 Mb,依此类推……

当它达到最大内存(512 Mb)时,执行停止,我收到以下错误:

Process exited before completing request

几分钟后尝试时,记忆被清理干净并再次从100 Mb开始

有没有办法清理Lambda函数中的已用内存?如果没有,还有其他方法可以解决这个问题吗?

编辑:

我使用此lambda函数使用node-canvas从canvas生成图像

我相信你可能会有一些静态变量.在 Java环境中,AWS-Lambda将静态变量保存在多个lambda执行的内存中.因此,如果您有一个静态映射,并且每次执行lambda都会向其添加变量,那么它将保留在内存中.对于node.js也可能是这种情况.
网友评论