问题
一夜之间,尽管最近没有对架构进行任何更改,但我的服务开始对运行时间较长(30 秒以上)的请求抛出 504 错误。
设置
- GCP Cloud Run 配置了 3600 秒超时
- 具有指向 Cloud Run 的无服务器 NEG 的 GCP 负载均衡器
疑难解答
如果我直接点击 Cloud Run 生成的 URL,我可以成功执行 30 秒以上的请求。 如果我改为访问公共(public) URL(以及负载均衡器),则较长的请求会超时。
沉思
查看 Google Cloud 发行说明,负载平衡发生了更改,但与超时无关:https://cloud.google.com/release-notes
当前设置已经完美运行了一年多。
更新
对于无服务器 NEG 禁用修改后端超时,请参见下文:
更新2
这似乎是上次更新期间引入的 GCP 负载平衡错误,因为默认超时应为 60 分钟,而不是 documentation 中规定的 30 秒。 :
最佳答案
由于问题与我们的产品环境有关,因此我们创建了新的负载均衡器,这次我们选择全局(经典)LB 作为选项,获取新的 IP 地址,并在我们的 dns 提供商处交换旧的 IP 地址。之后一切正常。可能会删除以前的LB。我知道这不是问题的解决方案,而是一种解决方法,但是嘿,我们像以前一样进行了生产工作并导出数据。
关于google-cloud-platform - Google Cloud Load Balancer 突然抛出 504 超时(尽管架构没有变化),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76023595/