一种通用与专用混合流量控制方法、计算机设备和存储介质技术

技术编号:31085227 阅读:20 留言:0更新日期:2021-12-01 12:36
本发明专利技术涉及一种通用与专用混合流量控制方法、计算机设备和存储介质,将现有系统流量上限设定阈值,将整体流量分为通用流量和专用流量;对请求的参数中设定一个权重值,根据权重值判定请求为高低;请求到达时,首先向通用流量令牌桶请求令牌,若获取到令牌,则执行请求,并将通用流量令牌桶中的令牌数减少一个,若此刻通用流量令牌桶中的令牌数量不足,则判断该请求的权重,若为低权重请求,则拒绝请求,若为高权重请求,则再向专用流量令牌桶请求令牌,若获取到令牌,则执行请求,若专用流量令牌桶中令牌不足,则拒绝请求。与现有技术相比,本发明专利技术可优先保障高权限请求处理,将低权重请求抛弃降低系统负载,提高系统资源使用效能。提高系统资源使用效能。提高系统资源使用效能。

【技术实现步骤摘要】
一种通用与专用混合流量控制方法、计算机设备和存储介质


[0001]本专利技术涉及流量管理
,尤其是涉及一种通用与专用混合流量控制方法、计算机设备和存储介质。

技术介绍

[0002]随着计算机技术的发展,越来越多的技术应用在金融领域或IT技术等领域,但由于各行业的安全性及实时性要求,也对技术提出了更高的要求。其中,在数据流量管理方面,为了防止某一服务器访问量或某一应用访问量过大而导致系统瘫痪,常常采用流量控制的方式来对服务器或应用后台进行保护。
[0003]现有常见的流量控制方法是采用令牌桶算法,如图1所示,程序首先设置一个令牌桶,用于存放固定数量的令牌。程序以r(r=限流值/时间周期秒)的速度向令牌桶中增加令牌,直到令牌桶满。请求到达时需向令牌桶请求令牌,若获取到令牌则通过请求,否则触发限流策略。放置令牌这个动作是一直持续的,如果令牌桶放满,则无法再放入更多的令牌。而如果令牌桶中令牌数为0的时候,请求会被阻塞或拒绝。令牌桶算法中,令牌桶容量通常对应系统资源所能处理请求的上限。令牌桶算法的优点在于既可以保障流量流入的频率,还能保障系统请求突发性大增时,系统仍然能稳定运行。现有的利用令牌桶算法进行的限流方法是设定令牌桶最大令牌数量,通常对应系统资源所能承受的容量进行限定。然而此方式在系统资源不足开始执行限流策略的情况下,所有请求会一概被阻塞或拒绝,无法充分利用系统资源保障重要请求的处理。

技术实现思路

[0004]本专利技术的目的就是为了克服上述现有技术存在的缺陷而提供一种通用与专用混合流量控制方法、计算机设备和存储介质,本专利技术在系统资源紧张或不足的情况下,可优先保障高权限请求(系统核心业务请求)的处理,将低权重请求抛弃降低系统负载,提高系统资源使用效能。
[0005]本专利技术的目的可以通过以下技术方案来实现:
[0006]一种通用与专用混合流量控制方法,该方法包括下列步骤:
[0007]S1:预先将现有系统流量上限设定一个阈值,根据阈值将整体流量分为通用流量和专用流量,并相应地生成通用流量令牌桶和专用流量令牌桶。
[0008]S2:对请求设定一个权重值,根据权重值判定请求为高权重请求或低权重请求。
[0009]S3:请求到达时,首先向通用流量令牌桶请求令牌,若获取到令牌,则执行请求,并将通用流量令牌桶中的令牌数减少一个,若此刻通用流量令牌桶中的令牌数量不足,则执行下一步。
[0010]S4:判断该请求的权重,若为低权重请求,则拒绝请求,若为高权重请求,则再向专用流量令牌桶请求令牌,若获取到令牌,则执行请求,若专用流量令牌桶中令牌不足,则拒绝请求。
[0011]S1中,以一定速率持续放置令牌至通用流量令牌桶直至通用流量令牌桶满,并以一定速率持续放置令牌至专用流量令牌桶直至通用流量令牌桶满,二者放置令牌的速率不同。令现有系统流量上限为R,所述通用流量令牌桶放置令牌的速率为R*设定阈值对应的百分数,所述专用流量令牌桶放置令牌的速率为R*(1

设定阈值对应的百分数)。
[0012]进一步地,将现有系统流量上限设定为500请求/秒,并设定阈值对应的百分数为80%,则通用流量令牌桶放置令牌的速率为500
×
80%=400请求/秒,专用流量令牌桶放置令牌的速率为500*20%=100请求/秒。
[0013]进一步地,对请求设定的权重值的范围为1~10。若请求的权重值大于5,则判定该请求属于高权重请求,若请求的权重值小于或等于5,则判定该请求属于低权重请求。
[0014]进一步地,当通用流量令牌桶中的令牌数数量为零时,判断通用流量令牌桶中的令牌数量不足。当专用流量令牌桶中的令牌数数量为零时,判断专用流量令牌桶中的令牌数量不足。
[0015]一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述通用与专用混合流量控制方法的步骤。
[0016]一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述通用与专用混合流量控制方法的步骤。
[0017]本专利技术提供的通用与专用混合流量控制方法、计算机设备和存储介质,相较于现有技术至少包括如下有益效果:
[0018]1)本专利技术对请求设定权重值或者优先级进行区分,高权重的请求允许请求专用流量,并对系统资源根据阈值设置不同的流量池,针对系统资源紧张的情况下,可按请求权重值或优先级使用专用流量,可避免所有请求会一概被阻塞或拒绝的情况;
[0019]2)与现有采用令牌桶算法的流量控制方法相比,本专利技术可以根据请求的权重,在系统资源达到紧张阈值后,优先保障高权重请求的服务,先抛弃低权重请求,能够提升系统资源利用效能,保障核心业务运行;且能够提高系统稳定性,在接近系统处理阈值后,拒绝掉不重要的请求,避免系统资源瓶颈。
附图说明
[0020]图1为现有采用令牌桶算法的流量控制方法的原理示意图;
[0021]图2为实施例中通用与专用混合流量控制方法的原理流程示意图。
具体实施方式
[0022]下面结合附图和具体实施例对本专利技术进行详细说明。显然,所描述的实施例是本专利技术的一部分实施例,而不是全部实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本专利技术保护的范围。
[0023]实施例
[0024]图2是根据本专利技术实施例的通用与专用混合流量控制方法的主要流程示意图。作为本专利技术的一个实施例,如图2所示,所述通用与专用混合流量控制方法可以包括:
[0025]步骤一、预先将现有系统流量上限R设定一个阈值,将整体的流量分为通用流量和
专用流量,并相应地生成通用流量令牌桶和专用流量令牌桶。
[0026]在实际过程中,以一定速率放令牌至通用流量令牌桶,放置令牌的动作是一直持续的,如果令牌桶放满,则无法再放入更多的令牌。同时,以一定速率放令牌至专用流量令牌桶,放置令牌的动作是一直持续的,如果令牌桶放满,则无法再放入更多的令牌。两个桶放令牌的速率是不同的。通用流量令牌桶放令牌的速率为R*阈值(百分数),专用流量令牌桶放令牌的速率为R*(1

阈值)。
[0027]作为优选实施方式,设定整体流量上限为(R=500请求/秒),如果资源使用达到阈值80%,则可以认为资源紧张需要限流,则通用流量令牌桶上限为500
×
80%=400请求/秒。专用流量令牌桶上限为500*20%=100请求/秒。即如果R为系统处理请求的上限500请求/秒,阈值为80%,则通用流量令牌桶放入令牌的速度为r1=400请求/秒,专用流量令牌桶放入令牌的速度为r2=100/秒。
[0028]步骤二、对请求设定一个权重值Q(范围1

10),根据权重值判定请求的高低。设定权重的方式可根据系统业务请求重要程度设置,本实施例中不做限定说明。...

【技术保护点】

【技术特征摘要】
1.一种通用与专用混合流量控制方法,其特征在于,包括下列步骤:1)预先将现有系统流量上限设定一个阈值,根据阈值将整体流量分为通用流量和专用流量,并相应地生成通用流量令牌桶和专用流量令牌桶;2)对请求设定一个权重值,根据权重值判定请求为高权重请求或低权重请求;3)请求到达时,首先向通用流量令牌桶请求令牌,若获取到令牌,则执行请求,并将通用流量令牌桶中的令牌数减少一个,若此刻通用流量令牌桶中的令牌数量不足,则执行下一步;4)判断该请求的权重,若为低权重请求,则拒绝请求,若为高权重请求,则再向专用流量令牌桶请求令牌,若获取到令牌,则执行请求,若专用流量令牌桶中令牌不足,则拒绝请求。2.根据权利要求1所述的通用与专用混合流量控制方法,其特征在于,步骤1)中,以一定速率持续放置令牌至通用流量令牌桶直至通用流量令牌桶满,并以一定速率持续放置令牌至专用流量令牌桶直至通用流量令牌桶满,二者放置令牌的速率不同。3.根据权利要求2所述的通用与专用混合流量控制方法,其特征在于,步骤1)中,令现有系统流量上限为R,所述通用流量令牌桶放置令牌的速率为R*设定阈值对应的百分数,所述专用流量令牌桶放置令牌的速率为R*(1

设定阈值对应的百分数)。4.根据权利要求3所述的通用与专用混合流量控制...

【专利技术属性】
技术研发人员:陈琮魏明丽周高翔严萍萍张磊贾龙龙
申请(专利权)人:上海浦东发展银行股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1