AWS Gateway超时

时间:2019-10-14 15:52:28

标签: javascript amazon-web-services aws-lambda aws-api-gateway

我正在使用lambda函数来处理大量数据(超过30秒),并且正在接收来自AWS Gateway的消息:

  

端点请求超时

我知道这显然是由于AWS Gateway的默认超时,但是我的Lambda函数设置为最多运行15分钟。

增加此超时的最佳方法是什么?当然,考虑到可以将lambda设置为执行更长的时间,可以做到这一点。

谢谢

3 个答案:

答案 0 :(得分:2)

API网关在30秒后超时,您是否尝试过使用计划的事件来触发lambda而不是通过API网关?

答案 1 :(得分:2)

根据the documentation,API网关在30秒后超时。到目前为止,它是不可配置的。

  

集成超时50毫秒-所有集成类型(包括Lambda,Lambda代理,HTTP,HTTP代理和AWS集成)的29秒。

答案 2 :(得分:2)

API网关的硬限制为30秒。如果您的Lambda通常需要30秒以上(并且您确实需要使用API​​端点而不是时间表,SQS或其他来源),则应使用网关后面的Lambda来触发另一个执行实际工作并给出响应的Lambda类似于{ "file_id": "some_id", "status": "in_progress"}。 然后从另一个API端点获取工作结果。 理想情况下,您还应该有另一个端点来检查工作状态,以便API的用户知道何时完成工作以及可以下载结果了。