调度器&负载均衡调度算法整理
一、Linux 调度器


二、Hadoop调度器
FIFO 调度器

Fair Scheduler(公平调度器)


Capacity Scheduler(容量调度器)

三、LVS的10种调度算法
静态算法:
rr(round robin):轮询调度算法:
wrr(weight):权重调度算法
sh(source hashing)源地址散列:
dh(destination hashing)目标地址散列,把同一个ip地址的请求,发送给同一个server
动态调度算法:
LC(least connection)最少连接:
wlc(weight least connection scheduling)加权最少连接:
sed(shortest expected)最短延迟调度:
nq(nerver queue)永不排队,改进的sed
LBLC(locality based leastconnection)基于局部性的最少连接
LBLCR(Locality-Based Least Connections withReplication)带复制的基于局部性最少连接
四、Nginx的五种调度算法
rr轮询算法:
wrr权重算法:
ip_hash算法:
url_hash:
fair:
五、gig:自带负载均衡和降级功能的高可用RPC解决方案

六、TPP的负载均衡(流量调度)
设计考虑点
- 机器上线/热部署事件
- 性能波动
- 服务质量:latency/cpu/load
- 防止雪崩/优先保证不降级
- 单机cache命中率/uid
- 小流量集群调度
- 集群不同规格机器支持
权重计算和调节
cpu为cpu_usage, 和ps结果接近,不超过100%. 若为load,则为单core的平均load,默认2已经无法正常服务
- 1/ 指标被归一化到(0,100)区间
- 2/ 5%误差, 指标都是周期统计结果,允许一定的波动范围,避免反复调节达不到稳定状态。因此存在20个状态, 由于cpu等限流因此部分状态无效
- 3/ 默认权重w=20;若当前机器负载为: cpu1, cpu2,......cpun, 求平均数,按照cpu状态排序,并按照和平均数的差距进行权重加减, 形成一轮新的w1,w2,.....wn, 而sum(w) 仍然为20*n
- 4/ 机器-1, 重新计算平均数,重复(3)步骤
- 5/ 机器+1, 渐进式扩流量,权重默认为1,重复步骤(3)
- 6/ 机器增减m,同(4),(5)
- 7/ 调度周期:需要根据流量和机器规模设置一个合理值,不能太快也不能太迟钝,原则是:本地调度完几乎所有router状态达到一致,且当前权重下负载达到稳态。当然灵敏肯定没问题,只要指标最好平滑即可,只是太频繁调整会浪费性能
调度器&负载均衡调度算法整理的更多相关文章
- 三种LVS负载均衡技术的优缺点----负载均衡调度算法
三种LVS负载均衡技术的优缺点归纳以下表: VS/NATVS/TUNVS/DR 服务器操作系统任意支持隧道多数(支持Non-arp) 服务器网络私有网络局域网/广域网局域网 服务器数目(100M网络) ...
- LVS 的负载均衡调度算法
LVS 的负载均衡调度算法 1.轮叫调度 (Round Robin) ( rr ) 调度器通过“ 轮叫 ”调度算法将外部请求按顺序轮流分配到集群的真实服务器上,它均等地对待每一台服务器,而不管服务器上 ...
- Nginx负载均衡调度算法
Nginx支持的负载均衡调度算法方式如下: 1. weight轮询(默认) 接收到的请求按照顺序逐一分配到不同的后端服务器,即使在使用过程中,某一台后端服务器宕机,nginx会自动将该服务器剔除出队列 ...
- Yarn调度器负载模拟器——Yarn Scheduler Load Simulator (SLS)
一.概述: Yarn调度器有很多实现,如Fifo, Capacity和Fair schedulers等.与其同一时候,正在进行一些优化措施来提高调度器在不同负载和工作场景下的性能.每一个调度器都有自己 ...
- spark的task调度器(FAIR公平调度算法)
FAIR 调度策略的树结构如下图所示: FAIR 调度策略内存结构 FAIR 模式中有一个 rootPool 和多个子 Pool, 各个子 Pool 中存储着所有待分配的 TaskSetMagage ...
- LVS负载均衡(LVS简介、三种工作模式、十种调度算法)
一.LVS简介 LVS(Linux Virtual Server)即Linux虚拟服务器,是由章文嵩博士主导的开源负载均衡项目,目前LVS已经被集成到Linux内核模块中.该项目在Linux内核中实现 ...
- LVS负载均衡工作模式和调度算法
原文链接:https://blog.csdn.net/weixin_40470303/article/details/80541639 一.LVS简介 LVS(Linux Virtual Server ...
- LVS负载均衡软件使用及(LVS简介、三种工作模式、十种调度算法)
一.LVS简介 LVS(Linux Virtual Server)即Linux虚拟服务器,目前LVS已经被集成到Linux内核模块中.该项目在Linux内核中实现了基于IP的数据请求负载均衡调度方案, ...
- LVS 负载均衡 三种工作模式 十种调度算法
原文链接:https://blog.csdn.net/weixin_40470303/article/details/80541639 一.LVS简介 LVS(Linux Virtual Server ...
随机推荐
- qbxt Day4
1.树形dp 例题1 树上最长链 其实有两种方法,但为了简便,就只学了最通用的dp算法 我们考虑设dp[i][0/1]表示以i为根的最长路和次长路,然后拼接就行了 第二维0表示最长路,1表示次长路 i ...
- js箭头函数
ES6标准新增了一种新的函数:Arrow Function(箭头函数). 为什么叫Arrow Function?因为它的定义用的就是一个箭头 x =>x*x 相当于: function(x) { ...
- 前端 new和instanceof JavaScript
new和instanceof的内部机制 new 代码例子 var Func=function(){ }; var func=new Func (); new共经过4个阶段 1.创建一个空对象 var ...
- echarts图标相关
图标类型参考地址: http://echarts.baidu.com/echarts2/doc/doc.html 知识点一: 堆叠柱状图与普通柱状图的区别在于: 堆叠柱状图 在series中需要设置 ...
- Mbatis错误信息整理
***每存在一对接口和xml文件,必须在xml文件中定义好mapper标签及namespace ***每对接口必须和xml文件名必须一致 <mapper>标签中的names ...
- mysql修改登录密码三种方式
一.用SET PASSWORD命令 首先登录MySQL,使用mysql自带的那个客户端连接上mysql. 格式:mysql> set password for 用户名@localhost = ...
- Windows下远程桌面的连接
[系统环境] 建议Windows7以上 [步骤说明] 1.使用"WIN + R"组合键打开"运行"对话框,然后输入“mstsc”,点击确定,如下图所示: 2.点 ...
- Java集合类——Set、List、Map、Queue接口
目录 Java 集合类的基本概念 Java 集合类的层次关系 Java 集合类的应用场景 一. Java集合类的基本概念 在编程中,常需要集中存放多个数据,数组是一个很好的选择,但数组的长度需提前指定 ...
- PHP | Uploading and reading of files and database 【PHP | 文件的上传和读取与数据库】
这是我自己的一个作业,用的是很基础的代码. 有错误的地方欢迎批评和指正! 这里最容易出错的地方在读取数据后向数据库表中插入数据是的数据格式! 文件上传的页面 uploading.php <htm ...
- 简单使用PuTTy登录centos虚拟机
博主刚刚开始学习Linux,想通过写博客的方式加深对linux学习的记忆 使用虚拟机安装精简版的linux后发现窗口字体太小,于是就想着通过PuTTy登录的方式解决 简单安装linux后 将linux ...