负载均衡器原理

一台服务器的性能达到极限时,我们可以使用服务器集群来提高网站的整体性能。那么,在服务器集群中,需要有一台服务器充当调度者的角色,用户的所有请求都会首先由它接收,调度者再根据每台服务器的负载情况将请求分配给某一台后端服务器去处理。

主要考虑几个问题:

一、触发

应用层触发

dns域名解析负载均衡
优点:实现简单
缺点:目前的DNS解析是多级解析,每一级DNS都可能化缓存记录A,当摸一服务器下线后,该服务器对应的DNS记录A可能仍然存在,导致分配到该服务器的用户访问失败。只能采用性能较差的轮询算法。

http重定向协议
优点: 实现简单
缺点: 浏览器需要2次请求服务器才能完成一次访问,性能较差。

反向代理
优点: 安全,而反向代理服务作为沟通桥梁就需要配置双网卡、外部内部两套IP地址。比如Nginx支持分配模式也比较全。

网络层

优点:因为反向代理服务器工作在HTTP层,其本身的开销就已经严重制约了可扩展性。比如LVS支持模式也比较全。LVS-DR没用过。

二、分配

轮询,平均分配。
按权重分配。能力强分配权重大点。
按能力分配。能力就是处理速度(记录处理一个任务的时间, 或者在相同时间内缓存数量)一般这种效果最好
按hash结果来处理。 (缓存的时候特别有效)

参考:https://blog.csdn.net/mengdonghui123456/article/details/53981976

猜你喜欢

转载自blog.csdn.net/petershuang/article/details/81133955