主要的几种负载均衡的算法都在nginx里面有用到,下面这篇文章对这几种算法介绍比较详细,请参考。
http://baidutech.blog.51cto.com/4114344/1033718
文中提到了几种常见的软件负载均衡的算法,平均分配(轮询),加权轮询;ip hash;fair(最小值负载均衡)这里需要提到一点,笔者曾见到过一位同事分析采用这个最小值负载均衡算法可能产生抖动,由于机器上 延迟产生,同时上文中也提到了“这种策略具有很强的自适应性,但是实际的 络环境往往不是那么简单,因此要慎用。”;通用hash,一致性hash(扩容比较方便);随机分配。
其中笔者的一位同事就是采用的带权值的随机负载均衡的算法:每个机器的空闲率[0.01,1) 1 – 实际请求量/机器负载能力;然后将所有机器的空闲率相加和S,随机产生一个[0.01,1)的数R;得到D=S*R;用D依次减去每台机器的空闲率直到D
除了nginx还有两种常用的负载均衡的软件LVS 和 HAProxy
三种软件所用的中转模式总结请见文章:
http://blog.csdn.net/wuqingaixue/article/details/46712105#
三种负载均衡软件的优缺点请见文章:
Nginx/LVS/HAProxy负载均衡软件的优缺点详解
http://www.ha97.com/5646.html
文章知识点与官方知识档案匹配,可进一步学习相关知识算法技能树首页概览34716 人正在系统学习中
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!