【发布时间】:2020-02-23 20:39:30
【问题描述】:
我有一个调用外部 API(需要 30 多秒)并返回数据的 lambda 函数。根据 step function docs,我认为我可以通过计划的 cloudwatch 事件调用 lambda 函数来避免 30 秒的 lambda 超时限制。情况似乎并非如此。如何调用长时间运行的 lambda 函数?我试过了:
- 通过在我的机器上调用 CLI
aws lambda invoke...来调用 lambda 函数@TIMES OUT - 通过调用我机器上的 CLI
aws stepfunctions start-execution...TIMES OUT 来调用 step 函数(调用 lambda) - 直接从我的计算机运行函数(不使用 lambda)。 api 响应大约需要 45 秒。 作品
【问题讨论】:
-
Lambda 执行时间限制为 15 分钟...只需更改执行时间限制?
-
是的,但是 api 网关限制是 30 秒。有没有办法在不通过网关的情况下做到这一点?
-
出站请求不应该通过 API Gateway... 触发 Lambda 的请求是通过 API Gateway 来的吗?
-
@hephalump 你是对的。这解决了这个问题。如果您想提出我会接受的解决方案...我从来没有想过出站请求没有通过网关
-
太棒了!很高兴您的问题得到解决并且我能够提供帮助!
标签: amazon-web-services lambda aws-lambda aws-step-functions