nginx 499 的一些解决方法

Nginx 正在等待后端响应(upstream server),但客户端先断开了连接

场景:
  后端接口响应慢,客户端等待超时主动断开
  移动端网络波动,连接中断
  用户在浏览器中发起请求,但页面加载太久或用户点击了“取消”按钮

解决:

        proxy_ignore_client_abort on;      # 默认为off,当客户端网络中断请求时,nginx服务器中断其对后端服务器的请求。即如果此项设置为on开启,则服务器会忽略客户端中断并一直等着代理服务执行返回,如果设置为off,则客户端中断后Nginx也会中断客户端请求并立即记录499日志,默认为off。
        
        启用keepalive_timeout,保持客户端长连接。
        
        如果真的是后端响应慢,需要分析nginx日志的upstreamtime 平均响应时间, 这个时候要分析下后端应用性能问题。
        
        配置后端连接和响应超时时间。
        http {
            proxy_read_timeout 60s;  # 后端响应超时
            proxy_connect_timeout 60s;  # 连接后端超时
            proxy_send_timeout 60s;  # 发送请求超时
    }

 

posted @ 2025-05-27 10:39  不会跳舞的胖子  阅读(182)  评论(0)    收藏  举报