调度器&负载均衡调度算法整理
一、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 ...
随机推荐
- P1666 前缀单词
P1666 前缀单词 tire树上跑dp 首先将trie树建出来,然后对于每个节点.考虑他的子节点. 子节点的方案数都互不干扰,所以子节点与其他子节点的的方案数可以利用乘法原理算出来. 然后如果这个节 ...
- 188. Best Time to Buy and Sell Stock IV——LeetCode
Say you have an array for which the ith element is the price of a given stock on day i. Design an al ...
- redis 高性能应用
redis可达到512M/per key 512M=512*1024KB=512*1024*1000B=512*1024*1000*8bit=40亿+ 化整为零40亿,也就是说一位代表一个用户,40亿 ...
- 滑动窗口(poj,线段树维护区间最值)
题目描述 现在有一堆数字共N个数字(N<=10^6),以及一个大小为k的窗口.现在这个从左边开始向右滑动,每次滑动一个单位,求出每次滑动后窗口中的最大值和最小值. 例如: The array i ...
- Hadoop(3)-Hadoop介绍
Hadoop三大发行版本 Hadoop三大发行版本:Apache.Cloudera.Hortonworks. Apache版本最原始(最基础)的版本,对于入门学习最好. Cloudera在大型互联网企 ...
- docker理论基础
Namespaces 命名空间(namespaces)是 Linux 为我们提供的用于分离进程树.网络接口.挂载点以及进程间通信等资源的方法.在日常使用 Linux 或者 macOS 时,我们并没有运 ...
- 新手学习ARM,对片内ram、SDRAM、NOR FLASH和NAND FLASH启动这几个概念的理解
片内的ram用来存储启动代码,在2440初始化sdram之前,代码就在片内ram中运行.片内ram装载的是norflash中的内容,即u-boot. uboot放在norflash里,nandflas ...
- 《深入浅出MFC》– Document-View深入探讨
1.其实Document/View不是什么新东西,Xerox PARC实验室是这种观念的滥觞.它是Smalltalk环境中的关键性部分,在那里它被称为Model-View-Controller(MVC ...
- maven 添加自己下载的jar包到本地仓库
1.在pom文件中添加依赖,其中groupId等变量都自拟. 例如: 2.在命令行执行以下命令,提示build success即表示安装成功. mvn install:install-file -Dg ...
- mtools使用-1
mtools是什么? mtools 是一组非常好用的 MongoDB 日志分析工具 ,由MongoDB Inc 官方工程师所写. 组成部分 mlogfilter :按时间切片日志文件,合并日志文件,过 ...