当前位置: 首页 > 知识库问答 >
问题:

API网关+Lambda+VPC超时问题

景正文
2023-03-14

早上好,你能帮我们解决下一个问题吗:我有一个API网关+Java Lambda处理程序。这个Lambda使用httpconnection获取一些Internet REST API。

当我们使用这个Lambda而不使用VPC时,它工作得很好。但当我们使用配置了internet访问的VPC时--有时Lambda会出现超时错误而失败。它在20%的请求中失败(80%的请求工作正常),下一个错误发生在日志中。

REPORT RequestId: 16214561-b09a-11e6-a762-7546f12e61bd Duration: 15000.26 ms Billed Duration: 15000 ms Memory Size: 512 MB Max Memory Used: 47 MB

09:57:49
2016-11-22T09:57:49.245Z 16214561-b09a-11e6-a762-7546f12e61bd Task timed out after 15.00 seconds

根据我的日志,lambda不能发送GET请求。我不确定问题出在哪里。这是Lambda问题、VPC问题还是某种共形问题。我也尝试了许多不同的REST Apiendpoint,所以这绝对不是一个endpoint问题。

感谢任何帮助。

共有1个答案

左丘善
2023-03-14

当您将Lambda函数放置在VPC内部时,它将无法访问VPC外部的任何内容。要使Lambda函数能够访问VPC外部的资源,必须在VPC中添加NAT网关。

 类似资料:
  • 我需要从endpoint获取一些数据,然后根据响应将这些数据存储到数据库中。

  • 我试图弄清楚如何从运行在VPC中的lambda访问Api网关服务Api(也称为“管理Amazon Api网关”)。不,我不是试图在私有API中调用资源方法(我知道如何创建VPC接口endpoint),只是调用AWS服务方法(,FWIW,使用Python boto3客户机)。希望这是有意义的,很难清楚地表达这与如此多的“API”重载在这里。当前的尝试以超时失败,所以我认为这是与VPC相关的,但我不确

  • 我也没有在AWS文档中找到任何实质性的东西。

  • 我对API网关有一些问题。我做了几个API方法,有时它们的工作时间超过10秒,Amazon返回504错误。下面是截图: 请救命!如何增加超时?

  • 在此之后,我将Lambda、RDS实例和DocumentDb集群附加到VPC。但是,从那时起,我就无法使用NodeJS AWS-SDK从我的lambda中与我的SQS队列进行对话。 我想补充的是,我已经阅读并实现了以下几点:AWS Lambda:无法从具有VPC访问的Lambda函数访问SQS队列,但是我仍然无法连接。 以下是我所拥有的: null null λ: 我将Lambda附加到VPC,如