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 @   张蓝芳  阅读(184)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示