[发明专利]一种高并发限流方法、装置以及计算机存储介质在审
申请号: | 202211081754.5 | 申请日: | 2022-09-06 |
公开(公告)号: | CN115665045A | 公开(公告)日: | 2023-01-31 |
发明(设计)人: | 郑艳涛;周文凯;陈亮;金昕;刘永超;黄宁;俞星 | 申请(专利权)人: | 浙江大华技术股份有限公司 |
主分类号: | H04L47/12 | 分类号: | H04L47/12;H04L47/215 |
代理公司: | 深圳市威世博知识产权代理事务所(普通合伙) 44280 | 代理人: | 严翠霞 |
地址: | 310051 浙江*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 并发 限流 方法 装置 以及 计算机 存储 介质 | ||
1.一种高并发限流方法,其特征在于,所述高并发限流方法应用于一种客户端,所述高并发限流方法包括:
响应于申请令牌事件触发,从第一限流周期的发令牌桶获取令牌,其中,所述令牌的发布周期值更新为所述第一限流周期;
基于所述令牌执行所述申请令牌事件的业务请求,将生成的业务数据上传到服务端;
检测完成所述令牌对应的业务请求时的当前限流周期是否为所述第一限流周期;
若是,将所述令牌放回所述第一限流周期的回收令牌桶;
其中,每一限流周期的令牌总数量为一固定值。
2.根据权利要求1所述的高并发限流方法,其特征在于,
所述将生成的业务数据上传到服务端之后,所述高并发限流方法还包括:
在所述完成所述令牌对应的业务请求时的当前限流周期为第二限流周期时,将所述令牌放入所述第二限流周期的发令牌桶。
3.根据权利要求1所述的高并发限流方法,其特征在于,
所述将生成的业务数据上传到服务端之后,所述高并发限流方法还包括:
在所述完成所述令牌对应的业务请求时的当前限流周期为第二限流周期时,获取业务请求队列;
检测所述业务请求队列中是否存在有效历史请求;
若是,则获取所述业务请求队列中的首位有效请求,将所述令牌的发布周期值更新为所述第二限流周期,基于所述令牌执行所述首位有效请求。
4.根据权利要求3所述的高并发限流方法,其特征在于,
所述获取业务请求队列之后,所述高并发限流方法还包括:
在所述业务请求队列中不存在有效历史请求时,将所述令牌放回所述第二限流周期的发令牌桶。
5.根据权利要求3或4所述的高并发限流方法,其特征在于,
所述第二限流周期与所述第一限流周期为相邻的限流周期;
所述高并发限流方法还包括:
在所述完成所述令牌对应的业务请求时的当前限流周期为第二限流周期时,将所述第一限流周期中的发令牌桶中的令牌放入所述第二限流周期中的回收令牌桶,将所述第一限流周期中的回收令牌桶中的令牌放入所述第二限流周期中的发令牌桶。
6.根据权利要求5所述的高并发限流方法,其特征在于,
所述第一限流周期与相邻的所述第二限流周期之间的周期迭代通过预先注册的定时器触发。
7.根据权利要求3所述的高并发限流方法,其特征在于,
所述高并发限流方法还包括:
响应于申请令牌事件触发,在第一限流周期的发令牌桶无法获取令牌时,将所述申请令牌事件的业务请求放入固定长度的业务请求队列。
8.一种高并发限流装置,其特征在于,所述高并发限流装置包括获取模块、执行模块以及回收模块;其中,
所述获取模块,用于响应于申请令牌事件触发,从第一限流周期的发令牌桶获取令牌,其中,所述令牌的发布周期值更新为所述第一限流周期;
所述执行模块,用于基于所述令牌执行所述申请令牌事件的业务请求,将生成的业务数据上传到服务端;
所述回收模块,用于检测完成所述令牌对应的业务请求时的当前限流周期是否为所述第一限流周期;若是,将所述令牌放回所述第一限流周期的回收令牌桶;
其中,每一限流周期的令牌总数量为一固定值。
9.一种高并发限流装置,其特征在于,所述高并发限流装置包括处理器以及与所述处理器耦接的存储器;
其中,所述存储器用于存储程序数据,所述处理器用于执行所述程序数据以实现如权利要求1-7任一项所述的高并发限流方法。
10.一种计算机存储介质,其特征在于,所述计算机存储介质用于存储程序数据,所述程序数据在被处理器执行时,用以实现如权利要求1-7任一项所述的高并发限流方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大华技术股份有限公司,未经浙江大华技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211081754.5/1.html,转载请声明来源钻瓜专利网。
- 上一篇:卧式冷柜
- 下一篇:一种用于有色金属材料的冲洗装置