美文网首页
nginx 负载均衡

nginx 负载均衡

作者: 0爱上1 | 来源:发表于2018-01-05 17:09 被阅读29次

    nginx 做负载均衡:

    upstream {

        server localhost:8080 max_fail=1 fail_timeout=60s;

        server xx.xx.xx.xx:8080 max_fail=1 fail_timeout=60s backup;

    }

    主服务:本机8080作为主服务,

    参数max_fail=1 表示最大失败次数为1次,

    fail_timeout=60s (默认值10s)表示失败超时为60s,即在60s内只要发生一次失败。就不会再次重试连接该服务,而是等待60s之后再连接。通过配置此参数可以最大程度的确保:

    当我们在重新启动主服务时,会发生主服务的8080端口已经启动监听,但是主服务的tomcat并没有完全启动,这个时候该参数是默认值的化将会导致每过10s就重试一次主服务请求,导致每次发布主服务,用户都无法请求到所有的api,因为此时流量已经被nginx切换至主服务了,但是却不能响应请求。只有等待主服务的tomcat完全启动成功才会响应成功。

    故将该值设置大一些。就会在首次失败以后nginx将流量再次切换至备用服务器,然后等待60s后再次切换回主服务,这时,主服务应该已经启动成功。实现无缝切换发布。

    查阅文档发现。社区版的nginx不支持slow_start参数,该参数只有在收费版的nginx中才可以使用,利用该参数可以更好的解决主服启动过程中无法响应请求的问题。

    相关文章

      网友评论

          本文标题:nginx 负载均衡

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