【问题标题】:Set API Gateway integration request timeout with Serverless Framework使用无服务器框架设置 API Gateway 集成请求超时
【发布时间】:2020-03-13 05:01:25
【问题描述】:

是否可以在 serverless.yml 配置中的 AWS API Gateway 中设置自定义请求集成超时?

虽然问题很直接,但我发现一些上下文总是有用的:

当 lambda 函数超时时,我需要通知最终用户。由于项目需求(lambda 正在与可能未启动的第三方系统进行通信),可能会发生这种情况。我想出了一些其他的解决方案,不过我相信将 API-GW 请求超时设置为与 lambda 超时相同的时间是最好的。

【问题讨论】:

  • 你问,APIGW端点如何设置特定的超时时间?或者您是否询问如何在实际超时发生之前通知用户您无法完成请求?
  • @MariuszNowak 我问如何为 APIGW 端点设置特定的超时:)
  • 不幸的是,在无服务器框架中没有开箱即用的支持。还是请发一个请求,也很欢迎PR
  • @MariuszNowak 感谢您的回答:)
  • 目前使用 AWS CLI 是手动更新集成超时的最佳选择。这是我们用来手动解决问题的方法。 aws apigatewayv2 update-integration --integration-id <integration-id> --api-id <api id> --timeout-in-millis <time in milliseconds>

标签: aws-lambda aws-api-gateway serverless-framework


【解决方案1】:

意识到recent update in serverless framework - 函数超时在整个集成中得到尊重。您所要做的就是在您的函数中传递超时值。

这是一个例子:

functions: myfunction: handler: public/index.php timeout: 15 #This will be same for integration timeout in API Gateway. tags: project: myproject

【讨论】:

  • 请注意,这仅适用于您使用 HTTP API 集成的情况。它不适用于 REST API 集成。
猜你喜欢
  • 2020-10-09
  • 1970-01-01
  • 2018-08-14
  • 2019-10-26
  • 2022-10-13
  • 1970-01-01
  • 1970-01-01
  • 2020-07-10
  • 1970-01-01
相关资源
最近更新 更多