nginx负载均衡

    xiaoxiao2022-07-14  158

    nginx实现负载均衡,当然是对于多个tomcat而言,尤其是实现了tomcat集群的项目,比如你有2个tomcat服务器,为了节约成本,一个服务器性能好,一个性能差,当请求从浏览器传到nginx,你肯定希望nginx把大多数请求分发给性能好的服务器,而把少量的请求分发给性能差的服务器,nginx的负载均衡就能解决这种类似场景。

    常见的集中负载均衡的方式:

    1.轮询(默认)  每个请求按时间逐一分配到不同的服务器,如果down掉,自动剔除。

    2.weight 权重  指定轮询的占比,主要用于服务器性能不同的情况。

    3.ip_hash 每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器。

    4.down  表示单前的server暂时不参与负载

    5.backup 其它所有的非backup机器down或者忙的时候,请求backup机器。所以这台机器压力会最轻。

    6.fair  (第三方)按后端服务器的响应时间来分配请求,响应时间短的优先分配。与weight分配策略类似。

    配置:

    在nginx.conf 文件的http配置下配置upstream。

    权重举例:

    upstream nodes {

    server 192.168.1.1:3355 weight=1;

    server 192.168.1.2:3355 weight=2;

    }

    ip_hash举例:

    upstream nodes {

    ip_hash;

    server 192.168.1.1:3355 weight=1;

    server 192.168.1.2:3355 weight=2;

    }

     

    最新回复(0)