【问题标题】:How long until idle timeout changes take effect on an AWS load balancer?空闲超时更改对 AWS 负载均衡器生效多长时间?
【发布时间】:2018-06-14 09:30:19
【问题描述】:

我的弹性 beanstalk 应用程序出现 504 错误。我相信后端的请求花费的时间太长,负载均衡器正在向客户端返回 504。我尝试在负载均衡器上将空闲超时从 60 秒提高到 120 秒,但它似乎在 60 秒后仍然超时。我还需要做什么才能使其生效,还是只是时间问题?

【问题讨论】:

  • 你能附上你的 elb 配置的屏幕截图吗?
  • 你想看什么?
  • 我附上了一张图片
  • 我想我可能已经从 ELB 日志中确定 504 来自服务器,而不是负载均衡器。继续调查...
  • 很好,祝你调试顺利:)

标签: amazon-web-services amazon-elastic-beanstalk elastic-load-balancer


【解决方案1】:

好的,所以我找到了问题所在。虽然这并不能完全回答我最初的问题(ELB 超时更改生效需要多长时间),但它确实解决了我遇到的问题。

基本上,你需要配置 nginx 代理来延长超时时间:

https://stackoverflow.com/a/47169533/2460073

旁注 - 来自负载平衡器的日志有助于显示 BackendStatusCodeElbStatusCode 其中 504。这表明实际上是应用程序服务器返回了 504

【讨论】:

  • 此外,检查响应标头通常非常有价值。看到Server: nginx 将排除平衡器抛出错误。
  • 不一定排除平衡器抛出错误。当后端服务器关闭连接但不发送任何响应标头/字节时,我已经看到来自平衡器的502 Bad Gateway。 (在这种情况下,这是 nodejs 应用程序中的一个错误,但仍然如此)。
  • 如果服务器不发送任何响应头,平衡器不会在响应中设置Server: nginx
  • 哦 - 我明白你现在在说什么了。谢谢你的花絮!
猜你喜欢
  • 2017-09-30
  • 2014-04-26
  • 2020-03-16
  • 1970-01-01
  • 1970-01-01
  • 2021-08-15
  • 2018-03-14
  • 2016-11-12
相关资源
最近更新 更多