[发明专利]一种高并发限流方法、装置以及计算机存储介质在审
申请号: | 202211081754.5 | 申请日: | 2022-09-06 |
公开(公告)号: | CN115665045A | 公开(公告)日: | 2023-01-31 |
发明(设计)人: | 郑艳涛;周文凯;陈亮;金昕;刘永超;黄宁;俞星 | 申请(专利权)人: | 浙江大华技术股份有限公司 |
主分类号: | H04L47/12 | 分类号: | H04L47/12;H04L47/215 |
代理公司: | 深圳市威世博知识产权代理事务所(普通合伙) 44280 | 代理人: | 严翠霞 |
地址: | 310051 浙江*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 并发 限流 方法 装置 以及 计算机 存储 介质 | ||
本申请提供了一种高并发限流方法、装置以及计算机存储介质。该高并发限流方法应用于一种客户端,所述高并发限流方法包括:响应于申请令牌事件触发,从第一限流周期的发令牌桶获取令牌,其中,所述令牌的发布周期值更新为所述第一限流周期;基于所述令牌执行所述申请令牌事件的业务请求,将生成的业务数据上传到服务端;检测完成所述令牌对应的业务请求时的当前限流周期是否为所述第一限流周期;若是,将所述令牌放回所述第一限流周期的回收令牌桶;其中,每一限流周期的令牌总数量为一固定值。上述高并发限流方法可以通过分发令牌和回收令牌,形成令牌流量关系闭环,同时考察令牌流量的流入和流出,真正体现限流效果的精准限流。
技术领域
本申请涉及计算机技术领域,特别是涉及一种高并发限流方法、装置以及计算机存储介质。
背景技术
目前,基于网络的服务系统提供了各类服务,通常,根据具体所提供的服务,服务系统所能承受的访问量是有限的,当超出服务系统承受范围时,需要对流量进行限制,以防止服务系统宕机。常见的限流方式是在系统设计之初就根据单次服务响应时间等值估算出整体服务的访问量,从而估算出服务系统所应承受的访问量,并据此设置对于服务的访问流量限制及访问速度。例如,使用令牌桶来实现流量限制。
令牌桶算法是网络流量整形(Traffic Shaping)和速率限制(RateLimiting)中最常使用的一种算法。令牌桶算法最初来源于计算机网络。在网络传输数据时,为了防止网络拥塞,需限制流出网络的流量,使流量以比较均匀的速度向外发送。令牌桶算法就实现了这个功能,可控制发送到网络上数据的数目,并允许突发数据的发送。
但是,在实现本申请过程中,发明人发现现有技术中至少存在如下问题:传统限流算法缺失流量关系闭环,只考虑流入未考察流出,导致限流效果不精准。
发明内容
本申请提供了一种高并发限流方法、装置以及计算机存储介质,主要解决的技术问题是如何实现限流效果的精准限流。
为解决上述技术问题,本申请提供了一种高并发限流方法,所述高并发限流方法应用于一种客户端,所述高并发限流方法包括:
响应于申请令牌事件触发,从第一限流周期的发令牌桶获取令牌,其中,所述令牌的发布周期值更新为所述第一限流周期;
基于所述令牌执行所述申请令牌事件的业务请求,将生成的业务数据上传到服务端;
检测完成所述令牌对应的业务请求时的当前限流周期是否为所述第一限流周期;
若是,将所述令牌放回所述第一限流周期的回收令牌桶;
其中,每一限流周期的令牌总数量为一固定值。
其中,所述将生成的业务数据上传到服务端之后,所述高并发限流方法还包括:
在所述完成所述令牌对应的业务请求时的当前限流周期为第二限流周期时,将所述令牌放入所述第二限流周期的发令牌桶。
其中,所述将生成的业务数据上传到服务端之后,所述高并发限流方法还包括:
在所述完成所述令牌对应的业务请求时的当前限流周期为第二限流周期时,获取业务请求队列;
检测所述业务请求队列中是否存在有效历史请求;
若是,则获取所述业务请求队列中的首位有效请求,将所述令牌的发布周期值更新为所述第二限流周期,基于所述令牌执行所述首位有效请求。
其中,所述获取业务请求队列之后,所述高并发限流方法还包括:
在所述业务请求队列中不存在有效历史请求时,将所述令牌放回所述第二限流周期的发令牌桶。
其中,所述第二限流周期与所述第一限流周期为相邻的限流周期;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大华技术股份有限公司,未经浙江大华技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211081754.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:卧式冷柜
- 下一篇:一种用于有色金属材料的冲洗装置