美文网首页Nginx高端成长之路
Nginx upstream 配置注意事项

Nginx upstream 配置注意事项

作者: ZhiXiong | 来源:发表于2019-05-19 22:38 被阅读2次

Nginx upstream 中 keepalive 参数配置不当可能产生大量 TIME_WAITE,从而导致服务异常。(在采用轮询负载均衡策略,同时有大量请求的情况下)
keepalive 参数配置应该如何配置,我的建议是不小于后端 server 的数量。

upstream http_backend {
    server 127.0.0.1:8080;

    keepalive 16;
}

server {
    ...

    location /http/ {
        proxy_pass http://http_backend;
        proxy_http_version 1.1;
        proxy_set_header Connection "";
        ...
    }
}

why ?
因为没有明确的官方文档,准确的原因需要研究源码。下面给出我的推测:
因为采用 round-robin 策略,请求绝对的平均分配,keepalive 小于 server 数会导致 Nginx 与后端 server 的长连接更容易被销毁。
同时我们还发现采用 round-robin 策略,在后端 server 处理速度不一的情况下会影响整体的吞吐量。

相关文章

网友评论

    本文标题:Nginx upstream 配置注意事项

    本文链接:https://www.haomeiwen.com/subject/aldczqtx.html