CN113132254A - 漏桶算法的自适应流量控制方法、装置、介质及电子设备 - Google Patents
漏桶算法的自适应流量控制方法、装置、介质及电子设备 Download PDFInfo
- Publication number
- CN113132254A CN113132254A CN201911393916.7A CN201911393916A CN113132254A CN 113132254 A CN113132254 A CN 113132254A CN 201911393916 A CN201911393916 A CN 201911393916A CN 113132254 A CN113132254 A CN 113132254A
- Authority
- CN
- China
- Prior art keywords
- message
- speed
- processing speed
- message processing
- leaky
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 62
- 238000004422 calculation algorithm Methods 0.000 title claims abstract description 38
- 230000003044 adaptive effect Effects 0.000 title claims description 29
- 238000012545 processing Methods 0.000 claims abstract description 134
- 238000004590 computer program Methods 0.000 claims description 8
- 230000009467 reduction Effects 0.000 claims description 6
- 230000001105 regulatory effect Effects 0.000 claims description 3
- 230000008569 process Effects 0.000 abstract description 11
- 230000000694 effects Effects 0.000 abstract description 6
- 239000002609 medium Substances 0.000 description 13
- 238000012544 monitoring process Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 230000003993 interaction Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000003139 buffering effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 206010033799 Paralysis Diseases 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 239000012120 mounting media Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/21—Flow control; Congestion control using leaky-bucket
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请实施例公开了一种漏桶算法的自适应流量控制方法、装置、介质及电子设备。该方法包括:获取连接漏桶漏消息端的消息处理器的当前周期消息处理速度;若所述当前周期消息处理速度大于等于前一周期消息处理速度,则根据预设调节幅度对漏桶的漏消息速度进行增大调节,得到调节漏消息速度;根据所述调节漏消息速度,确定漏桶的调节体积。通过执行本技术方案,可以基于漏桶漏消息过程中的内部参数,来对漏桶算法进行自适应调节,以达到在最大化消息吞吐量的同时保证系统运行的平稳性的效果。
Description
技术领域
本申请实施例涉及互联网技术领域,尤其涉及一种漏桶算法的自适应流量控制方法、装置、介质及电子设备。
背景技术
随着视频监控领域越来越受重视以及投入的资源越来越多,对于处于管理中心位置的视频监控系统也提出了更为严峻的挑战。海量设备接入的情况下,视频监控系统能否依然维持稳定运行,业务能否平稳运行,对于视频监控系统来说是一个严峻的考验。
一般视频监控系统在设计时都会划分出很多个模块,将业务分解开,每个模块完成特定的一小部分任务,各模块通过消息通信,协作将整个业务完成。这其中就涉及到某些热点模块,热点模块处于各模块消息交互的中心位置。如果热点模块出现性能瓶颈,可能导致很多业务都无法正常运行。而热点模块所处的位置又决定了其往往出现性能瓶颈的可能性是很大的。因此,如何对类似于热点模块这种消息处理中心节点进行流量控制,是视频监控系统正常运行所必须要解决的技术难题。
发明内容
本申请实施例提供一种漏桶算法的自适应流量控制方法、装置、介质及电子设备,可以对漏桶算法进行自适应调节,以达到在最大化消息吞吐量的同时保证系统运行的平稳性的效果。
第一方面,本申请实施例提供了一种漏桶算法的自适应流量控制方法,该方法包括:
获取连接漏桶漏消息端的消息处理器的当前周期消息处理速度;
若所述当前周期消息处理速度大于等于前一周期消息处理速度,则根据预设调节幅度对漏桶的漏消息速度进行增大调节,得到调节漏消息速度;
根据所述调节漏消息速度,确定漏桶的调节体积。
可选的,所述方法还包括:
若所述当前周期消息处理速度小于前一周期消息处理速度,则根据预设调节幅度对漏桶的漏消息速度进行减小调节,得到调节漏消息速度。
可选的,根据预设调节幅度对漏桶的漏消息速度进行增大调节,得到调节漏消息速度,具体包括:
采用如下公式计算调节漏消息速度:
若Qpscurrent≥Qpsold;
则Qpsnew=(1+ρ)·Qpsold;
其中,Qpscurrent为当前周期消息处理速度,Qpsold为前一周期消息处理速度,Qpsnew为调节漏消息速度,ρ为预设调节幅度;
相应的,根据所述调节漏消息速度,确定漏桶的调节体积,包括:
采用如下公式计算漏桶的调节体积:
Vnew=Qpsnew·tmax;
其中,Vnew为漏桶的调节体积,tmax为消息处理最大延时。
可选的,根据预设调节幅度对漏桶的漏消息速度进行减小调节,得到调节漏消息速度,包括:
采用如下公式计算调节漏消息速度:
若Qpscurrent<Qpsold;
则Qpsnew=(1-ρ)·Qpsold;
其中,Qpscurrent为当前周期消息处理速度,Qpsold为前一周期消息处理速度,Qpsnew为调节漏消息速度,ρ为预设调节幅度。
可选的,若所述当前周期消息处理速度大于等于前一周期消息处理速度,则根据预设调节幅度对漏桶的漏消息速度进行增大调节,得到调节漏消息速度,包括:
若所述当前周期消息处理速度大于等于前一周期消息处理速度与缓冲参数之和,则根据预设调节幅度与前一周期消息处理速度,确定第一调节漏消息速度,以当前周期消息处理速度作为第二调节漏消息速度;
取所述第一调节漏消息速度和所述第二调节漏消息速度中较大的,作为最终调节漏消息速度。
可选的,若所述当前周期消息处理速度小于前一周期消息处理速度,则根据预设调节幅度对漏桶的漏消息速度进行减小调节,得到调节漏消息速度,包括:
若所述当前周期消息处理速度小于前一周期消息处理速度与缓冲参数之差,则根据预设调节幅度与前一周期消息处理速度,确定第三调节漏消息速度,以当前周期消息处理速度作为第四调节漏消息速度;
取所述第三调节漏消息速度和所述第四调节漏消息速度中较小的,作为最终调节漏消息速度。
可选的,在获取连接漏桶漏消息端的消息处理器的当前周期消息处理速度之前,所述方法还包括:
根据消息处理最大延时和初始漏消息速度,确定漏桶初始体积,以对漏桶进行初始化。
可选的,所述预设调节幅度为预设固定值;
或者,
所述预设调节幅度为根据所述当前周期消息处理速度和/或前一周期消息处理速度确定的。
第二方面,本申请实施例提供了一种漏桶算法的自适应流量控制装置,该装置包括:
消息处理速度获取模块,用于获取连接漏桶漏消息端的消息处理器的当前周期消息处理速度;
漏消息速度调节模块,用于若所述当前周期消息处理速度大于等于前一周期消息处理速度,则根据预设调节幅度对漏桶的漏消息速度进行增大调节,得到调节漏消息速度;
漏桶体积调节模块,用于根据所述调节漏消息速度,确定漏桶的调节体积。
第三方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本申请实施例所述的漏桶算法的自适应流量控制方法。
第四方面,本申请实施例提供了一种电子设备,包括存储器,处理器及存储在存储器上并可在处理器运行的计算机程序,所述处理器执行所述计算机程序时实现如本申请实施例所述的漏桶算法的自适应流量控制方法。
本申请实施例所提供的技术方案,获取连接漏桶漏消息端的消息处理器的当前周期消息处理速度;若所述当前周期消息处理速度大于等于前一周期消息处理速度,则根据预设调节幅度对漏桶的漏消息速度进行增大调节,得到调节漏消息速度;根据所述调节漏消息速度,确定漏桶的调节体积。通过采用本申请所提供的技术方案,可以基于漏桶漏消息过程中的内部参数,来对漏桶算法进行自适应调节,以达到在最大化消息吞吐量的同时保证系统运行的平稳性的效果。
附图说明
图1是本申请实施例提供的漏桶算法的自适应流量控制方法的流程图;
图2是本申请实施例提供的热点模块示意图;
图3是本申请实施例提供的漏桶算法的自适应流量控制方法的示意图;
图4是本申请实施例提供的漏桶算法的自适应流量控制装置的结构示意图;
图5是本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部结构。
在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各步骤描述成顺序的处理,但是其中的许多步骤可以被并行地、并发地或者同时实施。此外,各步骤的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
图1是本申请实施例提供的漏桶算法的自适应流量控制方法的流程图,本实施例可适用于处于消息交互中心位置的热点模块的消息处理情况,该方法可以由本申请实施例所提供的漏桶算法的自适应流量控制装置执行,该装置可以由软件和/或硬件的方式来实现,并可集成于用来进行消息处理的电子设备中。
如图1所示,所述漏桶算法的自适应流量控制方法包括:
S110、获取连接漏桶漏消息端的消息处理器的当前周期消息处理速度。
其中,漏桶可以是用来对消息进行临时承载的虚拟装置,可以是类似于一个先进先出的寄存器等等。漏桶的漏消息端可以是将消息漏到消息处理器当中。当前周期可以是根据预先设置的周期时长T来进行确定的。在本方案中,漏消息到消息处理器后,消息处理器可以对消息进行处理,消息处理速度可以用Qps(Queries-per-second,每秒查询率)来表示。
由于视频监控业务(比如实况监控)具有本质上的复杂性,一般视频监控系统在设计时都会划分出很多个模块,将业务分解开,每个模块完成特定的一小部分任务,各模块通过消息通信,协作将整个业务完成。这其中就涉及到某些热点模块。图2是本申请实施例提供的热点模块示意图。如图2所示,模块4就属于热点模块,热点模块处于各模块消息交互的中心位置。如果热点模块出现性能瓶颈,可能导致很多业务都无法正常运行。而热点模块所处的位置又决定了其往往出现性能瓶颈的可能性是很大的。举个例子,当前视频监控中sip协议栈(服务器协议)可算作一个热点模块,设备的注册、保活,告警以及实况业务等都需要通过sip协议栈完成,如果sip协议栈堵死,直接会导致批量的设备保活失败而引起设备的反复上下线,而设备的反复上下线又会引起实况等业务的恢复,导致sip协议栈的压力居高不下,最终导致整个系统的瘫痪。
S120、若所述当前周期消息处理速度大于等于前一周期消息处理速度,则根据预设调节幅度对漏桶的漏消息速度进行增大调节,得到调节漏消息速度。
其中,如果出现当前周期消息处理速度大于等于前一周期消息处理速度的情况,则说明当前消息处理器的处理能力是可以大于等于漏桶漏消息的速度的。因此,可以根据预设调节幅度对漏桶的漏消息速度进行增大调节,得到调节漏消息速度。其中,预设调节幅度可以是具体数值,例如20个Qps,还可以是一个比例值,例如在0-1之间,可以在前一周期消息处理速度的基础上乘以1加上预设调节幅度倍。
在本实施例中,可选的,在获取连接漏桶漏消息端的消息处理器的当前周期消息处理速度之前,所述方法还包括:根据消息处理最大延时和初始漏消息速度,确定漏桶初始体积,以对漏桶进行初始化。
图3是本申请实施例提供的漏桶算法的自适应流量控制方法的示意图。如图3所示,首先预先设定可以容忍的消息处理最大延时tmax(单位为s)和漏桶初始漏消息的速度Qpsini,则可由简单计算得到初始漏桶大小Vini=Qpsini·tmax。根据Qpsini和Vini对漏桶进行初始化,初始时漏桶为空的。
消息到来时先判断漏桶是否已满,若漏桶已满,则消息丢弃。否则,消息放入漏桶中。漏桶漏消息的速度决定了消息到达消息处理模块的速度,消息处理模块在处理消息的同时统计当前消息的实际处理速度Qpscurrent,Qpscurrent作为入参输入到一个反馈函数中,由反馈函数计算新的漏桶大小Vnew和新的漏消息速度Opsnew,并对漏桶进行调节。
在上述各技术方案中,可选的,所述方法还包括:若所述当前周期消息处理速度小于前一周期消息处理速度,则根据预设调节幅度对漏桶的漏消息速度进行减小调节,得到调节漏消息速度。其中,如果发现当前周期消息处理速度小于前一周期消息处理速度,则说明漏桶漏消息的速度过快,需要进行减慢调节。
在上述各技术方案中,可选的,所述预设调节幅度为预设固定值;或者,所述预设调节幅度为根据所述当前周期消息处理速度和/或前一周期消息处理速度确定的。其中,预设调节幅度可以是预先设置的固定值,例如在0-1范围内选取的一个固定的0.5作为预设调节幅度。除此之外,预设调节幅度还可以是根据当前周期消息处理速度、前一周期消息处理速度或者当前周期消息处理速度和前一周期消息处理速度共同确定的数值,例如,当前周期处理速度在某一个范围内,可以得到相应的预设调节幅度,在另一个范围内,还会映射到其他的预设调节幅度的数值。或者当前周期消息处理速度和前一周期消息处理速度之间满足一种关系时,映射到一个预设调节幅度值,满足另一种关系时,又会映射到其他的预设调节幅度的数值。这种映射关系不仅限于两种条件,还可以针对更多条件来确定。
根据预设调节幅度对漏桶的漏消息速度进行增大调节,得到调节漏消息速度,具体包括:
采用如下公式计算调节漏消息速度:
若Qpscurrent≥Qpsold;
则Qpsnew=(1+ρ)·Qpsold;
其中,Qpscurrent为当前周期消息处理速度,Qpsold为前一周期消息处理速度,Qpsnew为调节漏消息速度,ρ为预设调节幅度;
相应的,根据所述调节漏消息速度,确定漏桶的调节体积,包括:
采用如下公式计算漏桶的调节体积:
Vnew=Qpsnew·tmax;
其中,Vnew为漏桶的调节体积,tmax为消息处理最大延时。
在上述各技术方案中,可选的,根据预设调节幅度对漏桶的漏消息速度进行减小调节,得到调节漏消息速度,包括:
采用如下公式计算调节漏消息速度:
若Qpscurrent<Qpsold;
则Qpsnew=(1-ρ)·Qpsold;
其中,Qpscurrent为当前周期消息处理速度,Qpsold为前一周期消息处理速度,Qpsnew为调节漏消息速度,ρ为预设调节幅度。
本实施例中,具体流程具体设计如下:
(1)首先设定可以容忍的消息最大处理延时tmax(单位为s)和漏桶初始漏消息的速度Qpsini,调节周期T(单位:秒)和调节幅度ρ(0<ρ<1)。
(2)计算得到漏桶初始大小Vini=Qpsini·tmax,根据Qpsini和Vini对漏桶进行初始化,初始时漏桶为空。
(3)当有消息到达时,判断漏桶是否已满,若已满则丢弃,并累计丢弃消息的数目n,否则将消息放入漏桶中。n每T秒清空一次。
(4)当漏桶非空时,则开始以Qpsini发送消息给消息处理模块,消息处理模块以T为周期统计当前的消息处理速度Qpscurrent,并将Qpscurrent作为入参传入反馈器中。
(5)反馈器的作用是调节漏桶的两个参数:漏桶大小V和漏消息的速度Qps。其核心是反馈函数(Vnew,Qpsnew)=Fun(Vold,Qpsold,Qpscurrent)。
策略如下:若Qpscurrent≥Qpsold,说明当前漏消息速度偏慢,需增大,调节公式Qpsnew=(1+ρ)·Qpsold,相应的Vnew=Qpsnew·tmax。
若Qpscurrent<Qpsold,说明当前漏消息偏快,需减小,调节公式Qpsnew=(1-ρ)·Qpsold,相应的Vnew=Qpsnew·tmax。
(6)根据调整后的Vnew和Qpsnew对漏桶进行调节。
上述技术方案,提出了一种利用自适应漏桶方法,在海量设备接入的情况下,针对热点模块进行流控的方法,在最大化系统吞吐量的同时保证系统能平稳运行。
S130、根据所述调节漏消息速度,确定漏桶的调节体积。
其中,在确定调节漏消息速度之后,则可以根据漏消息速度以及最大延时,确定漏桶的调节体积。
本申请实施例所提供的技术方案,获取连接漏桶漏消息端的消息处理器的当前周期消息处理速度;若所述当前周期消息处理速度大于等于前一周期消息处理速度,则根据预设调节幅度对漏桶的漏消息速度进行增大调节,得到调节漏消息速度;根据所述调节漏消息速度,确定漏桶的调节体积。通过采用本申请所提供的技术方案,可以基于漏桶漏消息过程中的内部参数,来对漏桶算法进行自适应调节,以达到在最大化消息吞吐量的同时保证系统运行的平稳性的效果。
在上述各技术方案的基础上,可选的,若所述当前周期消息处理速度大于等于前一周期消息处理速度,则根据预设调节幅度对漏桶的漏消息速度进行增大调节,得到调节漏消息速度,包括:若所述当前周期消息处理速度大于等于前一周期消息处理速度与缓冲参数之和,则根据预设调节幅度与前一周期消息处理速度,确定第一调节漏消息速度,以当前周期消息处理速度作为第二调节漏消息速度;取所述第一调节漏消息速度和所述第二调节漏消息速度中较大的,作为最终调节漏消息速度。
在上述各技术方案的基础上,可选的,若所述当前周期消息处理速度小于前一周期消息处理速度,则根据预设调节幅度对漏桶的漏消息速度进行减小调节,得到调节漏消息速度,包括:若所述当前周期消息处理速度小于前一周期消息处理速度与缓冲参数之差,则根据预设调节幅度与前一周期消息处理速度,确定第三调节漏消息速度,以当前周期消息处理速度作为第四调节漏消息速度;取所述第三调节漏消息速度和所述第四调节漏消息速度中较小的,作为最终调节漏消息速度。
通过上述方案的设置,可以利用缓冲参数,来避免因为特殊情况造成的某一周期的消息处理速度临时会出现波动的情况,只有在与前一周期比,超过一定范围的情况下,才进行调节,从而提高漏桶调节的稳定性,避免受特殊情况影响导致的不必要的反复调节的问题。
在上述技术方案的基础上,本技术方案的调节策略如下:
若Qpscurrent≥(1+q)·Qpsold,说明当前漏消息速度偏慢,需调大漏消息速度,调节公式:Qpsnew=max{Qpscurrent,(1+ρ)·Qpsold},相应的Vnew=Qpsnew·tmax。
若Qpscurrent<(1-q)·Qpsold,说明当前漏消息速度偏快,需调小漏消息速度,调节公式:Qpsnew=min{Qpscurrent,(1-ρ)·Qpsold},相应的Vnew=Qpsnew·tmax。
与上述方案相比,本方案优点是引入一个额外的缓冲参数q,避免系统处理消息速度的偶然波动对整个调节过程产生影响,避免不必要的反复调节,并且综合权衡Qpscurrent和(1+ρ)·Qpsold、(1-q)·Qpsold进行调节,提高了调节效率。缺点是计算复杂度稍高,实际中可根据实际情况按需选择。
图4是本申请实施例提供的漏桶算法的自适应流量控制装置的结构示意图。如图4所示,所述漏桶算法的自适应流量控制装置,包括:
消息处理速度获取模块410,用于获取连接漏桶漏消息端的消息处理器的当前周期消息处理速度;
漏消息速度调节模块420,用于若所述当前周期消息处理速度大于等于前一周期消息处理速度,则根据预设调节幅度对漏桶的漏消息速度进行增大调节,得到调节漏消息速度;
漏桶体积调节模块430,用于根据所述调节漏消息速度,确定漏桶的调节体积。
本申请实施例所提供的技术方案,获取连接漏桶漏消息端的消息处理器的当前周期消息处理速度;若所述当前周期消息处理速度大于等于前一周期消息处理速度,则根据预设调节幅度对漏桶的漏消息速度进行增大调节,得到调节漏消息速度;根据所述调节漏消息速度,确定漏桶的调节体积。通过采用本申请所提供的技术方案,可以基于漏桶漏消息过程中的内部参数,来对漏桶算法进行自适应调节,以达到在最大化消息吞吐量的同时保证系统运行的平稳性的效果。
上述产品可执行本申请实施例所提供的方法,具备执行方法相应的功能模块和有益效果。
本申请实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种漏桶算法的自适应流量控制方法,该方法包括:
获取连接漏桶漏消息端的消息处理器的当前周期消息处理速度;
若所述当前周期消息处理速度大于等于前一周期消息处理速度,则根据预设调节幅度对漏桶的漏消息速度进行增大调节,得到调节漏消息速度;
根据所述调节漏消息速度,确定漏桶的调节体积。
存储介质——任何的各种类型的存储器设备或存储设备。术语“存储介质”旨在包括:安装介质,例如CD-ROM、软盘或磁带装置;计算机系统存储器或随机存取存储器,诸如DRAM、DDR RAM、SRAM、EDO RAM,兰巴斯(Rambus)RAM等;非易失性存储器,诸如闪存、磁介质(例如硬盘或光存储);寄存器或其它相似类型的存储器元件等。存储介质可以还包括其它类型的存储器或其组合。另外,存储介质可以位于程序在其中被执行的计算机系统中,或者可以位于不同的第二计算机系统中,第二计算机系统通过网络(诸如因特网)连接到计算机系统。第二计算机系统可以提供程序指令给计算机用于执行。术语“存储介质”可以包括可以驻留在不同位置中(例如在通过网络连接的不同计算机系统中)的两个或更多存储介质。存储介质可以存储可由一个或多个处理器执行的程序指令(例如具体实现为计算机程序)。
当然,本申请实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的漏桶算法的自适应流量控制操作,还可以执行本申请任意实施例所提供的漏桶算法的自适应流量控制方法中的相关操作。
本申请实施例提供了一种电子设备,该电子设备中可集成本申请实施例提供的漏桶算法的自适应流量控制装置。图5是本申请实施例提供的一种电子设备的结构示意图。如图5所示,本实施例提供了一种电子设备500,其包括:一个或多个处理器520;存储装置510,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器520执行,使得所述一个或多个处理器520实现本申请实施例所提供的漏桶算法的自适应流量控制方法,该方法包括:
获取连接漏桶漏消息端的消息处理器的当前周期消息处理速度;
若所述当前周期消息处理速度大于等于前一周期消息处理速度,则根据预设调节幅度对漏桶的漏消息速度进行增大调节,得到调节漏消息速度;
根据所述调节漏消息速度,确定漏桶的调节体积。
当然,本领域技术人员可以理解,处理器520还实现本申请任意实施例所提供的漏桶算法的自适应流量控制方法的技术方案。
图5显示的电子设备500仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图5所示,该电子设备500包括处理器520、存储装置510、输入装置530和输出装置540;电子设备中处理器520的数量可以是一个或多个,图5中以一个处理器520为例;电子设备中的处理器520、存储装置510、输入装置530和输出装置540可以通过总线或其他方式连接,图5中以通过总线550连接为例。
存储装置510作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块单元,如本申请实施例中的漏桶算法的自适应流量控制方法对应的程序指令。
存储装置510可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储装置510可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储装置510可进一步包括相对于处理器520远程设置的存储器,这些远程存储器可以通过网络连接。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置530可用于接收输入的数字、字符信息或语音信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。输出装置540可包括显示屏、扬声器等设备。
本申请实施例提供的电子设备,可以通过漏桶算法的自适应流量控制方式,提高速通门闸机处人脸识别的准确性的效果。
上述实施例中提供的漏桶算法的自适应流量控制装置、介质及电子设备可执行本申请任意实施例所提供的漏桶算法的自适应流量控制方法,具备执行该方法相应的功能模块和有益效果。未在上述实施例中详尽描述的技术细节,可参见本申请任意实施例所提供的漏桶算法的自适应流量控制方法。
注意,上述仅为本申请的较佳实施例及所运用技术原理。本领域技术人员会理解,本申请不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本申请的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本申请不仅仅限于以上实施例,在不脱离本申请构思的情况下,还可以包括更多其他等效实施例,而本申请的范围由所附的权利要求范围决定。
Claims (11)
1.一种漏桶算法的自适应流量控制方法,其特征在于,包括:
获取连接漏桶漏消息端的消息处理器的当前周期消息处理速度;
若所述当前周期消息处理速度大于等于前一周期消息处理速度,则根据预设调节幅度对漏桶的漏消息速度进行增大调节,得到调节漏消息速度;
根据所述调节漏消息速度,确定漏桶的调节体积。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若所述当前周期消息处理速度小于前一周期消息处理速度,则根据预设调节幅度对漏桶的漏消息速度进行减小调节,得到调节漏消息速度。
3.根据权利要求1所述的方法,其特征在于,根据预设调节幅度对漏桶的漏消息速度进行增大调节,得到调节漏消息速度,具体包括:
采用如下公式计算调节漏消息速度:
若Qpscurrent≥Qpsold;
则Qpsnew=(1+ρ)·Qpsold;
其中,Qpscurrent为当前周期消息处理速度,Qpsold为前一周期消息处理速度,Qpsnew为调节漏消息速度,ρ为预设调节幅度;
相应的,根据所述调节漏消息速度,确定漏桶的调节体积,包括:
采用如下公式计算漏桶的调节体积:
Vnew=Qpsnew·tmax;
其中,Vnew为漏桶的调节体积,tmax为消息处理最大延时。
4.根据权利要求2所述的方法,其特征在于,根据预设调节幅度对漏桶的漏消息速度进行减小调节,得到调节漏消息速度,包括:
采用如下公式计算调节漏消息速度:
若Qpscurrent<Qpsold;
则Qpsnew=(1-ρ)·Qpsold;
其中,Qpscurrent为当前周期消息处理速度,Qpsold为前一周期消息处理速度,Qpsnew为调节漏消息速度,ρ为预设调节幅度。
5.根据权利要求1所述的方法,其特征在于,若所述当前周期消息处理速度大于等于前一周期消息处理速度,则根据预设调节幅度对漏桶的漏消息速度进行增大调节,得到调节漏消息速度,包括:
若所述当前周期消息处理速度大于等于前一周期消息处理速度与缓冲参数之和,则根据预设调节幅度与前一周期消息处理速度,确定第一调节漏消息速度,以当前周期消息处理速度作为第二调节漏消息速度;
取所述第一调节漏消息速度和所述第二调节漏消息速度中较大的,作为最终调节漏消息速度。
6.根据权利要求2所述的方法,其特征在于,若所述当前周期消息处理速度小于前一周期消息处理速度,则根据预设调节幅度对漏桶的漏消息速度进行减小调节,得到调节漏消息速度,包括:
若所述当前周期消息处理速度小于前一周期消息处理速度与缓冲参数之差,则根据预设调节幅度与前一周期消息处理速度,确定第三调节漏消息速度,以当前周期消息处理速度作为第四调节漏消息速度;
取所述第三调节漏消息速度和所述第四调节漏消息速度中较小的,作为最终调节漏消息速度。
7.根据权利要求1所述的方法,其特征在于,在获取连接漏桶漏消息端的消息处理器的当前周期消息处理速度之前,所述方法还包括:
根据消息处理最大延时和初始漏消息速度,确定漏桶初始体积,以对漏桶进行初始化。
8.根据权利要求1-7中任意一项所述的方法,其特征在于,所述预设调节幅度为预设固定值;
或者,
所述预设调节幅度为根据所述当前周期消息处理速度和/或前一周期消息处理速度确定的。
9.一种漏桶算法的自适应流量控制装置,其特征在于,包括:
消息处理速度获取模块,用于获取连接漏桶漏消息端的消息处理器的当前周期消息处理速度;
漏消息速度调节模块,用于若所述当前周期消息处理速度大于等于前一周期消息处理速度,则根据预设调节幅度对漏桶的漏消息速度进行增大调节,得到调节漏消息速度;
漏桶体积调节模块,用于根据所述调节漏消息速度,确定漏桶的调节体积。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-8中任一项所述的漏桶算法的自适应流量控制方法。
11.一种电子设备,包括存储器,处理器及存储在存储器上并可在处理器运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-8中任一项所述的漏桶算法的自适应流量控制方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911393916.7A CN113132254B (zh) | 2019-12-30 | 2019-12-30 | 漏桶算法的自适应流量控制方法、装置、介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911393916.7A CN113132254B (zh) | 2019-12-30 | 2019-12-30 | 漏桶算法的自适应流量控制方法、装置、介质及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113132254A true CN113132254A (zh) | 2021-07-16 |
CN113132254B CN113132254B (zh) | 2023-03-24 |
Family
ID=76767931
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911393916.7A Active CN113132254B (zh) | 2019-12-30 | 2019-12-30 | 漏桶算法的自适应流量控制方法、装置、介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113132254B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114500385A (zh) * | 2021-12-23 | 2022-05-13 | 武汉微创光电股份有限公司 | 一种通过fpga实现千兆以太网数据流量整形的方法及系统 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5625622A (en) * | 1995-12-27 | 1997-04-29 | Lucent Technologies Inc. | Apparatus and method for a generalized leaky bucket |
CN1430376A (zh) * | 2001-12-30 | 2003-07-16 | 深圳市中兴通讯股份有限公司上海第二研究所 | 自动过负荷控制系统 |
CN1514609A (zh) * | 2002-12-13 | 2004-07-21 | ���뵼��V.N.����˾ | 利用多阈值漏桶的基于类别的速率控制 |
US20060067233A1 (en) * | 2004-09-28 | 2006-03-30 | Fujitsu Limited | Network device with traffic shaping functions and bandwidth control method using leaky bucket algorithm |
CN101110781A (zh) * | 2007-08-24 | 2008-01-23 | 中兴通讯股份有限公司 | 一种拥塞控制方法 |
WO2008043398A1 (en) * | 2006-10-09 | 2008-04-17 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and apparatus for use in a communications network |
WO2013000113A1 (zh) * | 2011-06-28 | 2013-01-03 | 中兴通讯股份有限公司 | 一种漏桶限速方法及装置 |
CN107547433A (zh) * | 2017-07-03 | 2018-01-05 | 阿里巴巴集团控股有限公司 | 基于令牌漏桶进行限流的方法、装置和设备 |
CN107682279A (zh) * | 2017-11-03 | 2018-02-09 | 东软集团股份有限公司 | 一种时延控制方法、装置及存储介质、程序产品 |
-
2019
- 2019-12-30 CN CN201911393916.7A patent/CN113132254B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5625622A (en) * | 1995-12-27 | 1997-04-29 | Lucent Technologies Inc. | Apparatus and method for a generalized leaky bucket |
CN1430376A (zh) * | 2001-12-30 | 2003-07-16 | 深圳市中兴通讯股份有限公司上海第二研究所 | 自动过负荷控制系统 |
CN1514609A (zh) * | 2002-12-13 | 2004-07-21 | ���뵼��V.N.����˾ | 利用多阈值漏桶的基于类别的速率控制 |
US20060067233A1 (en) * | 2004-09-28 | 2006-03-30 | Fujitsu Limited | Network device with traffic shaping functions and bandwidth control method using leaky bucket algorithm |
WO2008043398A1 (en) * | 2006-10-09 | 2008-04-17 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and apparatus for use in a communications network |
CN101110781A (zh) * | 2007-08-24 | 2008-01-23 | 中兴通讯股份有限公司 | 一种拥塞控制方法 |
WO2013000113A1 (zh) * | 2011-06-28 | 2013-01-03 | 中兴通讯股份有限公司 | 一种漏桶限速方法及装置 |
CN107547433A (zh) * | 2017-07-03 | 2018-01-05 | 阿里巴巴集团控股有限公司 | 基于令牌漏桶进行限流的方法、装置和设备 |
CN107682279A (zh) * | 2017-11-03 | 2018-02-09 | 东软集团股份有限公司 | 一种时延控制方法、装置及存储介质、程序产品 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114500385A (zh) * | 2021-12-23 | 2022-05-13 | 武汉微创光电股份有限公司 | 一种通过fpga实现千兆以太网数据流量整形的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN113132254B (zh) | 2023-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020238345A1 (zh) | 压力测试方法、装置、系统、设备及计算机可读存储介质 | |
US10356004B2 (en) | Software load balancer to maximize utilization | |
CN110019386A (zh) | 一种流数据处理方法及设备 | |
WO2022028592A1 (zh) | 目标检测跟踪方法、装置、电子设备和存储介质 | |
CN115576698A (zh) | 一种网卡中断聚合方法、装置、设备及介质 | |
CN105871661A (zh) | 公网服务器探测方法及探测服务器 | |
CN113132254B (zh) | 漏桶算法的自适应流量控制方法、装置、介质及电子设备 | |
EP3264851B1 (en) | Data transmission method and device for data service | |
CN111555987B (zh) | 限流配置方法、装置、设备及计算机存储介质 | |
CN104850431A (zh) | 基于fota升级的稳定处理方法和装置 | |
JP7444247B2 (ja) | バーストトラフィック検出装置、バーストトラフィック検出方法およびバーストトラフィック検出プログラム | |
CN113328906A (zh) | 一种流量实时监控方法、装置、存储介质及电子设备 | |
CN109600402A (zh) | 服务器负载均衡方法及装置、存储介质、服务器、服务系统 | |
CN115514710B (zh) | 一种基于自适应滑动窗的弱连接流量管控方法 | |
CN116340111A (zh) | 一种Linux套接字监听事件监控方法及装置 | |
CN110933135B (zh) | 在计算机设备中建立网络连接的方法和装置 | |
TW202215262A (zh) | 一種具延遲感知負載平衡的反向代理方法和存儲裝置 | |
CN116860657B (zh) | 压测控制处理方法、装置、计算机设备和存储介质 | |
CN106376060B (zh) | 数据包传输方法及装置 | |
CN105721236B (zh) | 一种以太网错包测试的方法及其装置 | |
CN118200203B (zh) | 网络抖动检测方法和网络抖动检测装置 | |
CN115623096A (zh) | 基于iec104规约的通信系统、通信方法、存储介质 | |
CN115277517B (zh) | 一种基于报文队列的通讯测试方法及装置 | |
CN113630422B (zh) | 一种基于边缘节点的网络安全数据处理方法和系统 | |
CN112804768B (zh) | 处理通信连接的方法及装置、终端和非暂时性存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |