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)按权重比例分配连接请求到相对较少的服务器(这种适合性能不一,请求时间不一的情形)

LVS部分调度算法的适应场景分析的更多相关文章

  1. TYPESDK手游聚合SDK服务端设计思路与架构之一:应用场景分析

    TYPESDK 服务端设计思路与架构之一:应用场景分析 作为一个渠道SDK统一接入框架,TYPESDK从一开始,所面对的需求场景就是多款游戏,通过一个统一的SDK服务端,能够同时接入几十个甚至几百个各 ...

  2. Oracle dbms_lock.sleep()存储过程使用技巧-场景-分析-实例

    <Oracle dbms_lock.sleep()存储过程使用技巧>-场景-分析-实例 摘要:今天是2014年3月10日,北京,雾霾,下午组织相关部门开会.会议的结尾一名开发工程师找到了我 ...

  3. LVS的调度算法

    LVS的调度算法(Scheduling Method)一共有10种 一.静态方法:仅根据算法本身进行调度 1.rr(Round Robin):轮询 2.wrr(Werghted Round Robin ...

  4. 理解 python metaclass使用技巧与应用场景分析

    理解python metaclass使用技巧与应用场景分析       参考: decorator与metaclass:http://jfine-python-classes.readthedocs. ...

  5. 数据结构之链表C语言实现以及使用场景分析

    牢骚:本篇博客两个星期前已经存为草稿,鉴于发生一些糟糕的事情,今天才基本完成.本人6月份应届毕业生一枚,毕业后当天来到帝都,之后也非常顺利,面试了俩家公司都成功了.一家做C++方面电商ERP,一家做w ...

  6. mariadb 10 多源复制(Multi-source replication) 业务使用场景分析,及使用方法

    mariadb 10 多源复制(Multi-source replication) 业务使用场景分析,及使用方法 官方mysql一个slave只能对应一个master,mariadb 10开始支持多源 ...

  7. ThreadLocal的理解与应用场景分析

    对于Java ThreadLocal的理解与应用场景分析 一.对ThreadLocal理解 ThreadLocal提供一个方便的方式,可以根据不同的线程存放一些不同的特征属性,可以方便的在线程中进行存 ...

  8. Java 常用List集合使用场景分析

    Java 常用List集合使用场景分析 过年前的最后一篇,本章通过介绍ArrayList,LinkedList,Vector,CopyOnWriteArrayList 底层实现原理和四个集合的区别.让 ...

  9. 068——VUE中vuex的使用场景分析与state购物车实例

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

随机推荐

  1. UnicodeEncodeError: 'gbk' codec can't encode character '\u2022' in position

    在GBK解码时忽略掉不能解码的数据 self.file.write(content.encode("gbk", 'ignore').decode("gbk", ...

  2. 解DBA之惑:数据库承载能力评估及优化手段

    原创 2016-08-29 韩锋 DBAplus社群   作者介绍 韩锋,宜信技术研发中心数据库架构师.精通多种关系型数据库,曾任职于当当网.TOM在线等公司,曾任多家公司首席DBA.数据库架构师等职 ...

  3. 从Linux 2.6.8内核的一个TSO/NAT bug引出的网络问题排查观点(附一个skb的优化点)

    梦中没有错与对,梦中没有恨和悔...最好闭上你的嘴.这样才算可爱...我不会说:这不公道,我不能接受.我会用朴素的文字记录点点滴滴,早上4点多起来,一气呵成最近的收获与评价,愤慨与忏悔. 四年多前的一 ...

  4. Windows编程中char*转LPCWSTR解决的方法总结

    Windows编程中常常涉及到的一个问题是字符串之间的转换,开发过程总是遇到编译器提示无法格式转换的问题.于是自己总结了几种解决的方法. 1.通过T2W转换宏 char* szStr = " ...

  5. jq 地区(省市县区)联动菜单

    <pre name="code" class="html"><pre name="code" class="ph ...

  6. MDK链接脚本错误

    我想让我的程序运行在RAM中而不是在SPI FLASH上,写了一个scatterfile: ROM 0x00000000 0x00200000 ;spi flash{STARTUP +0 { star ...

  7. poj3737 UmBasketella 真正的三分

    之前用二分写三分的板子...现在正式写一个三分,但是也不难,就是把区间分为三段就行了.求二次函数的峰值,每次取大的区间就行了. 题干: 最近几天,人们总是设计出多功能的新东西.例如,您不仅可以使用手机 ...

  8. Makefile 实际用例分析(三) ------- 是用GUN automake 处理自己的工程

    前面两篇已经说过了自己怎么去为一个工程写makefile: 第一篇 第二篇 现在这一篇说的是怎么使用GNU的工具去写一个符合开源标准的Makefile呢! 首先我觉你应该参考: Automake Au ...

  9. C++11 function使用

    function是一组函数对象包装类的模板,实现了一个泛型的回调机制. 引入头文件 #include <functional>using namespace std;using names ...

  10. 特征变化--->标签到向量的转换(OneHotEncoder)

    一.One-Hot Encoding     One-Hot编码,又称为一位有效编码,主要是采用位状态寄存器来对个状态进行编码,每个状态都由他独立的寄存器位,并且在任意时候只有一位有效.     在实 ...