加权随机法跟加权轮询法类似,根据后台服务器不同的配置和负载情况配置不同的权重,不同的是,它是按照权重来随机选取服务器的,而非顺序
比如希望抽到 A 的概率是 50%、抽到 B 和 C 的概率是 20%、抽到 D 的概率是 10%,一般来说,我们可以给各项附加一个权重,抽取的概率正比于这个权重,上述集合就成了 {A:5,B:2,C:2,D:1),扩展这个集合,使每一项出现的次数与其权重正相关,即 {A,A,A,A,A,B,BC,C,D},然后就可以用均匀随机算法从中选取了
5. 源地址哈希法
源地址哈希是根据获取客户端的 IP 地址,通过哈希函数计算得到一个数值,用该数值对服务器列表的大小进行取模运算,得到的结果便是客户端要访问服务器的序号。采用源地址哈希法进行负载均衡,当后端服务器列表不变时,同一个 IP 地址的客户端,每次都会映射到同一台后端服务器进行访问,但当后端服务器增加或者减少时,由于次数用于取模的服务器总数发生了变化,就导致同一哈希值的请求无法命中同一台服务器,节点数越高,命中率越低
6. 一致性哈希法