zoukankan      html  css  js  c++  java
  • LVS部分调度算法的适应场景分析

    1.轮叫调度算法(RR)假设所有服务器处理性能均相同,不管服务器的当前连接数和响应速度。
    该算法相对简单,不适用于服务器组中处理性能不一的情况,而且当请求服务时间变化比较大时,
    轮叫调度算法容易导致服务器间的负载不平衡。
    (这种适合服务器性能差不多,请求差不多的情形)

    2.加权轮叫调度(WRR)算法可以解决服务器间性能不一的情况,
    它用相应的权值表示服务器的处理性能,服务器的缺省权值为1。
    假设服务器A的权值为1,B的权值为2,则表示服务器B的处理性能是A的两倍.
    当请求的服务时间变化很大,单独的加权轮叫调度算法依然会导致服务器间的负载不平衡
    (这种适合服务器性能不一,但请求时间差不多的情形)


    3.最小连接调度(LCS)算法是把新的连接请求分配到当前连接数最小的服务器
    算法是把新的连接请求分配到当前连接数最小的服务器。最小连接调度是一种动态调度算法,
    它通过服务器当前所活跃的连接数来估计服务器的负载情况。
    调度器需要记录各个服务器已建立连接的数目,当一个请求被调度到某台服务器,其连接数加1;
    当连接中止或超时,其连接数减一

    当各个服务器有相同的处理性能时,最小连接调度算法能把负载变化大的请求分布平滑到各个服务器上,
    所有处理时间比较长的请求不可能被发送到同一台服务器上。
    但是,当各个服务器的处理能力不同时,该算法并不理想,
    因为TCP连接处理请求后会进入TIME_WAIT状态,TCP的TIME_WAIT一般为2分钟,此时连接还占用服务器的资源,
    所以会出现这样情形,性能高的服务器已处理所收到的连接,连接处于TIME_WAIT状态,
    而性能低的服务器已经 忙于处理所收到的连接,还不断地收到新的连接请求
    (这种适合性能差不多,请求时间不一样的情形)

    4.加权最小连接调度(WLC)按权重比例分配连接请求到相对较少的服务器(这种适合性能不一,请求时间不一的情形)

  • 相关阅读:
    Java面试——从JVM角度比较equals和==的区别
    Java线程和多线程(三)——线程安全和同步
    玩转Android之MVVM开发模式实战,炫酷的DataBinding!
    写点什么好呢2? 钱、事业、婚姻、人生意义
    写点什么好呢2? 钱、事业、婚姻、人生意义
    大型网站架构技术一览
    【树莓派】GSM900模块
    【Latex】数学公式排版
    【MYSQL】导入中文后乱码问题
    【R】shiny界面
  • 原文地址:https://www.cnblogs.com/caoguo/p/5041726.html
Copyright © 2011-2022 走看看