负载均衡的基本算法

负载均衡的基本算法,主要有如下几种(参考F5产品):web

  • 随机:负载均衡方法随机的把负载分配到各个可用的服务器上,经过随机数生成算法选取一个服务器,而后把链接发送给它。虽然许多均衡产品都支持该算法,可是它的有效性一直受到质疑,除非把服务器的可运行时间看的很重。算法

  • 轮询:轮询算法按顺序把每一个新的链接请求分配给下一个服务器,最终把全部请求平分给全部的服务器。轮询算法在大多数状况下都工做的不错,可是若是负载均衡的设备在处理速度、链接速度和内存等方面不是彻底均等,那么效果会更好。服务器

  • 加权轮询:该算法中,每一个机器接受的链接数量是按权重比例分配的。这是对普通轮询算法的改进,好比你能够设定:第三台机器的处理能力是第一台机器的两倍,那么负载均衡器会把两倍的链接数量分配给第3台机器。网络

  • 动态轮询:相似于加权轮询,可是,权重值基于对各个服务器的持续监控,而且不断更新。这是一个动态负载均衡算法,基于服务器的实时性能分析分配链接,好比每一个节点的当前链接数或者节点的最快响应时间等。负载均衡

  • 最快算法:最快算法基于全部服务器中的最快响应时间分配链接。该算法在服务器跨不一样网络的环境中特别有用。性能

  • 最少链接:系统把新链接分配给当前链接数目最少的服务器。该算法在各个服务器运算能力基本类似的环境中很是有效。spa

  • 观察算法:该算法同时利用最小链接算法和最快算法来实施负载均衡。服务器根据当前的链接数和响应时间获得一个分数,分数较高表明性能较好,会获得更多的链接。orm

  • 预判算法:该算法使用观察算法来计算分数,可是预判算法会分析分数的变化趋势来判断某台服务器的性能正在改善仍是下降。具备改善趋势的服务器会获得更多的链接。该算法适用于大多数环境。blog

相关文章
相关标签/搜索