nginx 返回 502 Bad Gateway

问题描述:

nginx 返回502 Bad Gateway

原因分析:

  1. 查看nginx错误日志大量 upstream timed out (110: Connection timed out)
  2. 排查后端服务线程状态,大连TIME_WAIT线程
  3. nginx与后端服务没有使用长链接,耗尽后端socket接口
  4. 服务器之间网络不稳定,请求失败太多导致Nginx认为没有存活服务从而记录日志:no live upstreams while connecting to upstream

解决方案:

  1. nginx配置keepalive 保持长连接即可,不用每个请求都创建新连接。
  http {
    upstream backend {
      server 192.168.1.1:8080;
      server 192.168.1.2:8080;
      # 增加300连接池
      keepalive 300
    }
  }
  1. 排查解决nginx与反向代理服务器之间的网络问题
  2. 使用参考配置提高Nginx并发和连接能力

版权声明:本文为adaivskean原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。