The invention is applicable to the technical field of network control, and provides a method and device for flexible current limiting, including: putting tokens into token buckets according to preset rate, and counting the abnormal rate of request response within the first preset time interval in the process of putting tokens into token buckets; dynamically adjusting the current release of the tokens according to the abnormal rate of request response. Rate and current capacity of the token bucket. The invention dynamically adjusts the token issuing rate and the capacity of the token bucket by the request response exception rate and the request failure rate, realizes the flexible way of limiting the request flow, and has higher flexibility compared with the traditional token bucket algorithm.
【技术实现步骤摘要】
一种弹性限流的方法及装置
本专利技术属于网络控制
,尤其涉及一种弹性限流的方法及装置、终端设备、计算机可读存储介质。
技术介绍
令牌桶算法最初来源于计算机网络,在网络传输数据时,为了防止网络拥塞,需限制流出网络的流量,使流量以比较均匀的速度向外发送。令牌桶算法就实现了这个功能,可控制发送到网络上数据的数目,并允许突发数据的发送。令牌桶算法是网络流量整形(TrafficShaping)和速率限制(RateLimiting)中最常使用的一种算法。典型情况下,令牌桶算法用来控制发送到网络上的数据的数目,并允许突发数据的发送。大小固定的令牌桶可自行以恒定的速率源源不断地产生令牌。如果令牌不被消耗,或者被消耗的速度小于产生的速度,令牌就会不断地增多,直到把桶填满。后面再产生的令牌就会从桶中溢出。最后桶中可以保存的最大令牌数永远不会超过桶的大小。传送到令牌桶的数据包需要消耗令牌。不同大小的数据包,消耗的令牌数量不一样。令牌桶这种控制机制基于令牌桶中是否存在令牌来指示什么时候可以发送流量。如果令牌桶中存在令牌,则允许发送流量;而如果令牌桶中不存在令牌,则不允许发送流量。因此,如果突发门限被合理地配置并且令牌桶中有足够的令牌,那么流量就可以以峰值速率发送。传统的令牌桶算法虽然能有效的限制数据传输速率,但是在固定时间内传输速率最大只能是令牌桶大小的上限。不能根据实际情况自动调整令牌桶大小或令牌发放速度,导致限流灵活性较差。
技术实现思路
有鉴于此,本专利技术实施例提供了一种弹性限流的方法及装置,以解决现有技术中限流灵活性较差的技术问题。本专利技术实施例的第一方面提供了一种 ...
【技术保护点】
1.一种弹性限流的方法,其特征在于,所述方法包括:根据预设速率向令牌桶投放令牌,并在向令牌桶投放令牌的过程中每隔第一预设时长统计所述第一预设时长内的请求响应异常率;根据所述请求响应异常率动态调整所述令牌的当前投放速率以及所述令牌桶的当前容量。
【技术特征摘要】
1.一种弹性限流的方法,其特征在于,所述方法包括:根据预设速率向令牌桶投放令牌,并在向令牌桶投放令牌的过程中每隔第一预设时长统计所述第一预设时长内的请求响应异常率;根据所述请求响应异常率动态调整所述令牌的当前投放速率以及所述令牌桶的当前容量。2.如权利要求1所述的方法,其特征在于,所述根据所述请求响应异常率动态调整所述令牌的投放速率以及所述令牌桶容量,包括:根据所述请求响应异常率降低所述令牌的当前投放速率以及所述令牌桶的当前容量。3.如权利要求2所述的方法,其特征在于,所述根据所述请求响应异常率降低所述令牌的投放速率以及所述令牌桶的容量,包括:降低所述令牌的当前投放速率的百分比以及降低所述令牌桶的当前容量的百分比,均等于或大于所述请求响应异常率。4.如权利要求1所述的方法,其特征在于,所述根据所述请求响应异常率动态调整所述令牌的当前投放速率以及所述令牌桶的当前容量,包括:当所述响应异常率大于预设阈值时,根据所述请求响应异常率降低所述令牌的当前投放速率以及所述令牌桶的当前容量;当所述响应异常率小于或等于所述预设阈值时,则统计第二预设时长内的请求失败率;根据所述请求失败率动态调整所述令牌的当前投放速率以及所述令牌桶的当前容量。5.如权利要求4所述的方法,其特征在于,所述根据所述请求失败率动态调整所述令牌的当前投放速率以及所述令牌桶的当前容量,包括:...
【专利技术属性】
技术研发人员:唐科,
申请(专利权)人:深圳市融汇通金科技有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。