随着互联网信息的迅速增长,负载均衡逐渐被更多人认识。负载均衡将负载分摊到不同的服务单元,有效保证了服务的可用性,提高了响应速度,提升了用户体验。
快速增长的访问量和数据流量,催生了各式各样的负载均衡产品。下面,让我们跟随宜信普惠了解一下以Nginx为代表的负载均衡软件。
Nginx的特点是稳定性高、功能强大、资源消耗低,另外一个重要特性就是其负载均衡功能,这也成了很多公司选择它的主要原因。
开展负载均衡的意义体现在以下方面:将多个服务器节点绑定在一起提供统一的服务入口;故障转移,在意外发生的时候,能增加一层保险,减少损失;降低上线运维复杂度,实现平滑上线。
宜信普惠发现,对于Nginx来说,请求到达Nginx,Nginx作为反向代理服务器,有绝对的决策权,可根据规则将请求分配给它知道的节点中的一个,通过这种分配,使得所有节点需要处理的请求量处于相对平均的状态,以此来实现负载均衡。
Nginx支持一致性hash进行分配,也就是配置中consistent。通常我们在生产环境下,业务节点经常会出现增加或减少的情况,就算这种增加或减少都是被动的,也有一定可能会对hash分配产生一定的影响。如何能做到最好能够降低影响呢?这时一致性hash出现了。
一致性hash解决两个问题:分配特别不均匀;节点变动除了对分配到这个节点上的请求有影响,还会导致其他节点上的请求重新分配。
宜信普惠表示,Nginx 处于总系统很重要的位置,Nginx的高可用影响到总系统的稳定性。如果Nginx服务器宕机,后端web服务将没办法提供服务,影响严重。为保证Nginx 的稳定和高可用,Nginx的负载均衡策略起着关键作用。