0

我是stackoverflow的新手,所以我为我糟糕的描述道歉......

我目前正在通过 aws lambda 运行 django。

运行函数时有 API 网关超时(30 秒)的情况。令人尴尬的是,短于 2 秒的函数也会超时!

我搜索了 CloudWatch 日志,发现了该死的超时日志。

超时日志

有趣的是,根据我的自定义日志,该功能在 30 秒超时前几乎 1 秒开始。

可能是什么问题呢?我试图尽可能地避免超时。

会不会是冷启动的原因?

我什至用 ["keep-warm": true] 和 ["keep_warm_expression": "rate(1 minute)"] 设置了我的 zappa_settings.json。

是的,我的 lambda 函数不在 vpc 中。

由于我的函数也是基于python的,我的同事认为它不能冷启动......(我已经尽一切努力减少冷启动的机会,对吧?)

我在下面发布了完整的日志。

实例在 02:09:52 开始,在 02:10:22 结束,函数(即 'MY_FUNCTION()')在 02:10:21 左右开始。(该函数应该以 'MY_FUNCTION() - 4' 结束,然后渲染 html。)

任何帮助,将不胜感激!

https://docs.google.com/document/d/1uMuuwLXm5PtwgE5Rtb-jid5T-carbuGxaiUP4AUd_pk/edit?usp=sharing

对于 Mrinal,以下是我的 lambda 配置。我在上面的谷歌文档中添加了角色描述。

Lambda 配置 1

Lambda 配置 2

Lambda 配置 3

Lambda 配置4

Lambda 配置5

4

1 回答 1

0

这不是因为你的代码。当您的 Lambda 配置出现问题时,就会发生这种情况。

 1. Check what Lambda Execusion Role you assign. It that have all requierd AWS Resource access or not.

在此处发布您的 Lambda 配置。

于 2020-11-19T17:56:24.983 回答