gpt4 book ai didi

node.js - 将 Lambda 运行时从 Node 8.x 更改为 Node 12.x 后,随机从 AWS API Gateway 收到 502 Bad Gateway 响应

转载 作者:行者123 更新时间:2023-12-02 10:36:23 24 4
gpt4 key购买 nike

由于 AWS Lambda 上的 NodeJS 8.x 运行时已停产,我们将 REST API 的暂存环境移至 NodeJS 12.x。

现在我们注意到,在某些随机时间,从前端 Web 应用程序到 API 网关的请求会失败并返回 502。通常这种情况发生在 API 空闲一段时间(几分钟)后。大多数情况下,这种情况发生在 OPTIONS 或 HEAD 请求中,但这可能是因为它是一段空闲时间后的第一个请求。对 API 的任何后续请求都工作正常。即使您刷新网站,所有请求都可以顺利通过。

我在 Lambda 上找不到任何日志。

API网关日志:

"error":  "Internal server error", "ErrorDetail": " "Internal server error"", "errorValidation": "-", "errorResponseType": "INTEGRATION_FAILURE"

我们在 rumtime NodeJS 10.x 上也遇到了同样的问题,但在 NodeJs 8 上没有。

感谢您的帮助!

最佳答案

看起来我们发现了这个错误 - 它在代码中。 :)

一段时间后,我们在 Cloud Watch 上发现 Lambda 日志与 API Gateway 的日志匹配,并且看到一些数据库超时。我们仍在调查细节,但问题出在用于日志记录的快速中间件上。

即使在 OPTIONS 和 HEAD 请求上并且在确保数据库连接处于事件状态之前,它也会访问数据库。该问题可能与数据库套接字超时和 Lambda 生命周期有关。然而,围绕日志中间件的简单 try-catch 显然解决了这个问题。

我们仍然不确定为什么 Node 8 的生产环境中没有发生错误。流量可能足够高以保持数据库连接打开。

感谢大家的帮助。

关于node.js - 将 Lambda 运行时从 Node 8.x 更改为 Node 12.x 后,随机从 AWS API Gateway 收到 502 Bad Gateway 响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59856259/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com