负载均衡:
以提高应用系统的响应能力、尽可能处理更多的访问请求、减少延迟为目标,获得高并发、高负载的整体性能。
负载均衡方式:
1、轮询(默认):请求按顺序逐一分配到不同的服务器,当后端服务器坏掉,能自动剔除。
2、指定权重:指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。
3、IP绑定 ip_hash:每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。
4、fair(第三方):按后端服务器的响应时间来分配请求,响应时间短的优先分配。
5、url_hash(第三方):按访问url的hash结果来分配请求,使每个url定向到同一个后端服务器,后端服务器为缓存时比较有效
集群负载均衡:
1、轮询(rr, RoundRobin):
将收到的访问请求按照顺序轮流分配给集群中的各节点(真实服务器)。
2、加权轮询(wrr, Weighted RoundRobin):
根据真实服务器的处理能力轮流分配收到的访问请求,它将依据不同RS的权重分配任务。权重较高的RS将优先获得任务,并且分配到的连接数将比权重较低的RS更多。这样可以保证处理能力强的服务器承担更多的访问流量。相同权重的RS得到相同数目的连接数。
3、最少连接(lc, Least Connections):
IPVS表存储了所有活动连接。把新的请求发送到当前连接数最小的RS。
4、加权最少连接(wlc,WeightedLeastConnections):
在服务器节点的性能差异较大的情况下,可以为真实服务器设置权重,权重较高的节点将承担更大比例的活动连接负载。假设各台RS的权重依次为Wi(i = 1..n),当前的TCP连接数依次为Ti(i=1..n),依次选取Ti/Wi为最小的RS作为下一个分配的RS。
5、source hashing源地址hash(sh)
将来自同一个ip的请求始终调度至同一RS