01、Nginx负债均衡策略

  作为web中间件,最大的作用就是对请求进行分发,当然这只是nginx的一种作用。nginx常见的负载均衡策略有6种,分别为:轮询、指定权重,ip_hash、least_conn、fair、url_hash。默认为轮询,fair和url_hash属于第三方策略。

   1、轮询策略:是nginx的负载均衡策略通过upstream来实现请求转发,轮询配置的权重都是一样的,会按照顺序转发,若有一台服务器挂掉,nginx会自动将这台服务从upstram 中剔除,配置轮询策略时,有fail_timeout 、max_fails、down  三个辅助参数,fail_timeout :表示指定时间类,某个服务器允许重试的最大次数,通常和max_fails参数结合使用。max_fails:表示在fail_timeout时间内,连接最大的失败次数,超过这个次数,nginx就断定该台服务器挂掉。

  2、指定权重:是通过在upstream配置相应的服务器指定weight权重参数来实现按照权重分发请求。weight参数值的大小和请求转发比率成正比。

举例:

upstream applicationServer {

  server 192.168.100.129 weight=8;

  server 192.168.100.130 weight=12:  

}

  3、ip_hash:每个请求根据原始访问的ip的hash结果来进行请求转发,即同一个IP,后续的请求都落在后端同一台服务上。通常能解决,session复制和同步的问题,因为这个ip请求都落在这一台服务器上,就不会用session不同步的问题,但是带来一个问题就是负载不均衡。

配置举例:

upstream applicationServer {

ip_hash;

  server 192.168.100.129 weight=8;

  server 192.168.100.130 weight=12:  

}

  4、least_conn:通过在upstream配置中增加least_conn配置,nginx在接收到请求后,把请求转发给后端连接较少的服务器。

upstream applicationServer {

least_conn;

  server 192.168.100.129 weight=8;

  server 192.168.100.130 weight=12:  

}

余下两种属于第三方策略,暂时不做表述。

posted @ 2022-05-01 16:38  张蓝芳  阅读(175)  评论(0编辑  收藏  举报