AWS Lambda函数在第一次调用时超时,适用于第二次调用

时间:2017-10-20 13:42:20

标签: amazon-web-services aws-lambda aws-api-gateway cold-start

我的AWS Lambda功能与AWS API集成 - 网关请求URL对于每个第一个请求都会超时,但它适用于下一个请求。

注意:我们还尝试通过在CloudWatch中安排Lambdas来保持Lambdas温暖,但它没有用。

2 个答案:

答案 0 :(得分:1)

这是冷启动的问题。

您可以执行以下操作以提高冷启动速度,

如果您使用node.js,

<强>的WebPack:

将单独文件中的所有模块打包到一个文件中。

如果您使用的是其他语言,

文件数量:

保持文件数量少于计数

<强> LazyLoad:

在需要时,不要预先加载所有内容,延迟加载或加载模块。

希望它有所帮助。

答案 1 :(得分:1)

在不了解您的具体用例的情况下,以下是两个一般性建议:

  1. 增加分配给您的功能的内存,这也会按比例增加CPU。由于您的功能很少被调用,因此增加内存大小的额外成本将通过更快的冷启动时间来平衡,从而缩短计费时间。

  2. 减少代码大小:更小的.zip,删除Node.js中不必要的require()等。例如,如果要包含Async库只是为了删除嵌套回调,请考虑放弃提高绩效。

  3. 有关更多选项,请参阅https://forums.aws.amazon.com/thread.jspa?threadID=181348