zoukankan      html  css  js  c++  java
  • python | Nginx负载均衡策略

    Nginx的upstream目前支持的5种方式的分配

    1. 轮询(默认)

      每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。
      upstream backserver {
      server 192.168.0.14;
      server 192.168.0.15;
      }
    2. 指定权重
      指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。

      upstream backserver {
      server 192.168.0.14 weight=10;
      server 192.168.0.15 weight=10;
      }
      

        

    3. IP绑定 ip_hash
      每个请求按访问ip的hash结果分配(可以针对同一个C类地址段中的客户端选择同一个后端服务器,除非那个后端服务器宕了才会换一个),这样每个访客固定访问一个后端服务器,可以解决session的问题。

      upstream backserver {
      ip_hash;
      server 192.168.0.14:88;
      server 192.168.0.15:80;
      }
    4. fair(第三方)
      按后端服务器的响应时间来分配请求,响应时间短的优先分配。
      upstream backserver {
      server server1;
      server server2;
      fair;
      }

    5. url_hash(第三方)
      按访问url的hash结果来分配请求,使每个url定向到同一个后端服务器,后端服务器为缓存时比较有效。

      upstream backserver {
      server squid1:3128;
      server squid2:3128;
      hash $request_uri;
      hash_method crc32;
      }

    使用

    1. 在需要使用负载均衡的server中增加

      proxy_pass http://backserver/;
      
      upstream backserver{ #定义负载均衡设备的Ip及设备状态
      ip_hash;
      server 10.0.0.11:9090 down;
      server 10.0.0.11:8080 weight=2;
      server 10.0.0.11:6060;
      server 10.0.0.11:7070 backup;
      }

      upstream还可以为每个设备设置状态值,这些状态值的含义分别如下:

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

      weight 默认为1.weight越大,负载的权重就越大。

      max_fails :允许请求失败的次数默认为1.当超过最大次数时,返回proxy_next_upstream 模块定义的错误.

      fail_timeout : max_fails次失败后,暂停的时间。

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

  • 相关阅读:
    AtCoder Beginner Contest 205
    Codeforces Round #725 (Div. 3)
    Educational Codeforces Round 110 (Rated for Div. 2)【A
    Codeforces Round #722 (Div. 2)
    AtCoder Beginner Contest 203(Sponsored by Panasonic)
    AISing Programming Contest 2021(AtCoder Beginner Contest 202)
    PTA 520 钻石争霸赛 2021
    Educational Codeforces Round 109 (Rated for Div. 2)【ABCD】
    AtCoder Beginner Contest 200 E
    Educational Codeforces Round 108 (Rated for Div. 2)【ABCD】
  • 原文地址:https://www.cnblogs.com/huangjiangyong/p/14081310.html
Copyright © 2011-2022 走看看