负载均衡

什么是负载量?
  客户端发送的、Nginx反向代理服务器接收到的请求数量,就是负载量。

  请求数量按一定的规则进行分发到不同的服务器处理的规则,就是均衡规则。

什么叫负载均衡?
  将服务器接收到的请求按照规则分发的过程,叫做负载均衡。负载均衡分为以下两种:

  • 硬件负载均衡(硬负载,如F5负载均衡,相对成本较高,但数据稳定和安全可以得到很好的保障)
  • 软件负载均衡(是利用现有的技术结合主机硬件实现的一种消息队列分发机制)  

Nginx支持的负载均衡调度算法:

  • weight轮询(默认):  

    将接收到的请求按顺序逐一分配到后端服务器,给不同的服务器设置一个权重值(weight),用于调整不同的服务器上请求的分配率,权重越大,被分配的几率越大。如果使用过程中某一台服务器宕机,Nginx会自动将该服务器剔除出队列,请求受理情况不受影响。 

  • ip_hash

  每个请求按照发起客户端的ip的hash结果进行匹配,固定的ip地址的客户端总会访问同一个服务器,在一定程度上解决了集群部署环境的Session共享问题。

  • fair

  响应时间短且处理效率高的服务器分配到请求的概率高,反之的服务器被分配的请求少。注意Nginx默认不支持fair算法,需要安装upstream_fair模块。

  • url_hash

  按照访问的url的hash结果分配请求,每个请求的url会指向固定的某个服务器,可以在Nginx作为静态服务器的情况下提高缓存效率。注意Nginx默认不支持url_hash算法,需要安装hash软件包。

参考:https://mp.weixin.qq.com/s/wZaQm4mEF8JQCNUqqftNjQ

posted @ 2021-02-11 19:23  smallzhen  阅读(186)  评论(0编辑  收藏  举报