首页 > 编程语言 >简述LVS的工作模式和调度算法

简述LVS的工作模式和调度算法

时间:2023-12-06 23:05:18浏览次数:36  
标签:算法 LVS RS 调度 连接数 简述 权值 节点

工作模式:NAT,TUNNEL,DR,FULLNAT

算法

说明

rr

轮询调度(Round-Robin),它将请求依次分配不同的RS节点,也就是在RS节点中均摊请求。这种算法简答,但是只适合于RS节点处理性能相差不大的情况

wrr

加权轮询调度(Weighted  Round-Robin)它将依据不同RS节点的权值分配任务。权值较高的RS将优先获得任务,并且分配到的连接数将比权值较低的RS节点更多。相同权值的RS得到相同数目的连接数。

dh

目的地址哈希调度(Destination  Hashing)以目的地址为关键字查找一个静态hash表来获得需要的RS

sh

源地址哈希调度(Source  Hashing)以源地址为关键字查找一个静态hash表来获得需要的RS

lc

最小连接数调度(Least-Connection),IPVS表存储了所有的活动的连接。把新的连接请求发送到当前连接数最小的RS

wlc

加权最小连接数调度(Weighted  Least-Connection)假设各台RS的权值依次为Wi(I=1..n),当前的TCP连接数依次为Ti(I=1..n),依次选取Ti/Wi为最小的RS作为下一个分配的RS

lblc

基于地址的最小连接数调度(Locality-Based Least-Connection),将来自同一目的地址的请求分配给同一台RS节点,如果这台服务器已满负荷,分配给连接数最小的RS,并以它为下一次分配的首先考虑

lblcr

基于地址带重复最小连接数调度(Locality-Based Least-Connection with Replication),对于某一目的地址,对应的一个RS子集。对此地址请求,为它分配子集中连接数最小RS;如果子集中所有服务器均已满负荷,则从集群中选择一个连接数较小服务器,将它加入到此子集并分配连接;若一定时间内,未被做任何修改,则将子集中负载最大的节点从子集删除

SED

最短的期望的延迟(Shortest  Expected Delay Scheduling SED)

基于wlc算法。举例:

ABC三台机器分别权重123,连接数也分别是123.那么如果使用WLC算法的话一个新请求进入时它可能会分给ABC中的任意一个。使用SED算法后会进行这样的运算:

A(1+1)/1

B(1+2)/2

C(1+3)/3

根据运算结果,把连接交给C

NQ

最少队列调度(Never  Queue Scheduling NQ)

无需队列。如果RS的连接数=0就直接分配过去,不需要再进行SED运算

大并发环境推荐:DR模式,rr调度算法。


标签:算法,LVS,RS,调度,连接数,简述,权值,节点
From: https://blog.51cto.com/ugali/8711019

相关文章

  • 【数据库概论】第三章 SQL简述、数据定义和索引
    3.1SQL概述3.1.1产生与发展最早在IBM的关系数据库管理系统原型SystemR上实现,后来美国国家标准局(ANSI)批准SQL作为关系数据库语言的美国标准,同年公布了SQL标准文本。近些年来SQL标准的内容越来越丰富和复杂。目前没有任何一个数据库系统能够支持SQL标准的所有概念和特性,同时不少......
  • 代码随想录算法训练营第七天| 344.反转字符串 541. 反转字符串II
    LeetCode344.反转字符串题目链接: LeetCode344思路: 定义left、right指针,将两指针对应的值反转即可 classSolution{public:voidreverseString(vector<char>&s){intn=s.size();for(intleft=0,right=n-1;left<right;++left,--right){......
  • 【Python】【OpenCV】凸轮廓和Douglas-Peucker算法
    针对遇到的各种复杂形状的主体,大多情况下,我们可以求得一个近似的多边形来简化视觉图像处理,因为多边形是由直线组成的,这样就可以准确的划分区域来便捷后续的操作。 cv2.arcLength()Method:参数:curve:要计算周长的轮廓,可以是一个矩形、圆形、多边形等封闭曲线。closed:一个布尔......
  • 双边滤波算法
      H:\CodeSet\vcg完善1\pclPrj\bilateralFunc.h//双边滤波算法floatsigma_s_=0.5;floatsigma_r_=0.5;pcl::PointCloud<pcl::PointXYZ>::PtrplcCloud1;PointCloud<pcl::Normal>::Ptrcloud_normals;doublekernel(doublex,doublesigma){retur......
  • 【数据结构和算法】搜索算法
    ①搜索最小值python的min函数返回列表中的最小项1defindexOfMin(lyst):2minIndex=03currentIndex=14whilecurrentIndex<len(lyst):5iflyst[currentIndex]<lyst[minIndex]:6minIndex=currentIndex7currentI......
  • 【数据结构和算法】排序算法
    使用swap函数来交换列表中的两项的位置1defswap(lyst,i,j):2'''交换列表中两项的位置'''3temp=lyst[i]4lyst[i]=lyst[j]5lyst[j]=temp①选择排序处于列表第一项,先找到最小项的位置,如果该位置不是列表的第一项,算法会交换这两个位置的项,然后......
  • 路径规划算法 - 求解最短路径 - Dijkstra算法
    Dijkstra算法的思想是广度优先搜索(BFS)贪心策略。是从一个顶点到其余各顶点的最短路径算法,节点边是不各自不同的权重,但都必须是正数如果是负数,则需要Bellman-Ford算法如果想求任意两点之间的距离,就需要用Floyd算法求节点0->4的最短路径每次从未标记的节点中选择距离......
  • 拒绝算法推荐,使用rss订阅消息与新闻!
    算法推荐的弊端就不说了借用RSSHub镜像网站如果你实在不会,又或者觉得麻烦,那你还可以搭其他网友的“便车”。我收集了 9 个公开的 RSShub镜像网站,它们用的都是用自己的服务器,所以在流量方面也不会有问题。服务器1 :https://rsshub.rssforever.com 服务器2 :https://rss......
  • java与算法Day1 Scanner的应用(一)
    java中使用输入需要用到java.util.Scanner。Scanner有next,nextInt,nextString,hasNext,hasNextLine等方法。使用XXX variable=Scanner.NextXXX就可以获取一个输入值。next系列的方法,他们的作用都是从键盘中接收数据。当程序执行到他们的时候,在命令行中就开始等待键盘输入了,而......
  • 文心一言 VS 讯飞星火 VS chatgpt (130)-- 算法导论11.2 2题
    二、用go语言,对于一个用链接法解决冲突的散列表,说明将关键字5,28,19,15,20,33,12,17,10插入到该表中的过程。设该表中有9个槽位,并设其散列函数为h(k)=kmod9。文心一言:在这个问题中,我们使用Go语言来解决一个散列(Hash)表的问题,该问题需要我们使用链接法解决冲突。我们的散列......