Round Robin 轮询调度算法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Round Robin 轮询调度算法相关的知识,希望对你有一定的参考价值。

参考技术A 轮询调度(Round-Robin Scheduling)

轮询调度(Round Robin Scheduling)算法就是以轮询的方式依次将请求调度不同的服务器,即每次调度执行i = (i + 1) mod n,并选出第i台服务器。算法的优点是其简洁性,它无需记录当前所有连接的状态,所以它是一种无状态调度。

轮询调度算法的原理是每一次把来自用户的请求轮流分配给内部中的服务器,从1开始,直到N(内部服务器个数),然后重新开始循环。

轮询调度算法流程

假设有一组服务器N台,S = S1, S2, …, Sn,一个指示变量i表示上一次选择的服务器ID。变量i被初始化为N-1。一个很经典的算法程序如下:

轮询调度算法假设所有服务器的处理性能都相同,不关心每台服务器的当前连接数和响应速度。当请求服务间隔时间变化比较大时,轮询调度算法容易导致服务器间的负载不平衡。

所以此种均衡算法适合于服务器组中的所有服务器都有相同的软硬件配置并且平均服务请求相对均衡的情况。

Round Robin

轮询调度算法的(Round-Robin Scheduling)原理是每一次把来自用户的请求轮流分配给内部中的服务器,从1开始,直到N(内部服务器个数),然后重新开始循环。

优点:简洁,无需记录当前所有连接的状态,所以它是一种无状态调度。

缺点:由于算法不关心每台服务器的当前连接数和响应速度,当请求服务间隔时间变化比较大时,轮询调度算法容易导致服务器间的负载不平衡

以上是关于Round Robin 轮询调度算法的主要内容,如果未能解决你的问题,请参考以下文章

负载均衡算法之轮询(Round Robin)法和随机(Random)法 Java 代码实现方法学习

负载均衡之轮询算法

LVS-算法

轮询算法

负载均衡算法--加权轮询法(Weight Round Robin)

负载均衡算法--平滑加权轮询法(Smooth Weight Round Robin)