nginx负载均衡算法:
(1)轮询
nginx默认算法,按照请求时间的先后顺序,轮番切换不同的服务器做响应。如果某台服务器宕机,nginx会自动剔除该服务器,剩余服务器继续轮询,当宕机服务器恢复,nginx会继续让该服务器参与轮询。后台服务器性能相同或者相近时,使用该算法。
(2)权重轮询
nginx会根据权重配置,让不同服务接受不同并发的请求,权重值越大,接受的请求量越多,具体使用weight配置,取值范围1-255之间,默认值为1。解决服务性能差异问题的。
upstream web-server-list{
server 192.168.48.152:8082 weight=10;
server 192.168.48.153:8085 weight=20;
server 192.168.48.153:8086;
}
8085和8082出现几率更大
(3)ip_hash算法
在轮询或者权重轮询的基础上,按照请求客户IP地址进行hash运算,IP相同客户总是到同一个服务器上。解决session不共享的问题。
(4)公平 fair算法
按照服务器响应时间来分配请求数量,响应时间越快,分配的请求越多。
(5)url_hash算法
按照请求的url地址,相同的url进行hash算法,相同URL到同一个服务器上。提高缓存使用率。
LVS(Linux Virtual Server)Linux虚拟服务器
三种IP 负载均衡技术( VS/NAT 、 VS/TUN 和 VS/DR )
八种调度算法( rr,wrr,lc,wlc,lblc,lblcr,dh,sh )
.LVS组成
负载均衡层(load balance)
服务器群组(Server Array)
数据共享存储(Shared Storage)