早上好,你能帮我们解决下一个问题吗: 我有一个 API 网关 + Java Lambda 处理程序。此 Lambda 使用 httpconnection 获取一些 Internet REST API。
当我们在没有 VPC 的情况下使用此 Lambda 时,它工作正常。但是当我们使用配置了互联网访问的 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 Api 端点,因此这绝对不是端点问题。
感谢任何帮助。
最佳答案
当您将 Lambda 函数放置在 VPC 中时,它将无法访问 VPC 之外的任何内容。要使您的 Lambda 函数能够访问 VPC 外部的资源,您必须将 NAT 网关添加到您的 VPC。
关于amazon-web-services - API Gateway+Lambda+VPC超时问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40741579/