[发明专利]基于服务接口的限流方法、装置、电子设备及存储介质在审
申请号: | 202010019040.6 | 申请日: | 2020-01-08 |
公开(公告)号: | CN111262795A | 公开(公告)日: | 2020-06-09 |
发明(设计)人: | 刘瑞东;程建波;彭南博;张德 | 申请(专利权)人: | 京东数字科技控股有限公司 |
主分类号: | H04L12/815 | 分类号: | H04L12/815 |
代理公司: | 北京华夏泰和知识产权代理有限公司 11662 | 代理人: | 韩来兵;李雪 |
地址: | 100176 北京市大兴区北京经*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 服务 接口 限流 方法 装置 电子设备 存储 介质 | ||
1.一种基于服务接口的限流方法,其特征在于,包括:
确定待调用接口在滑动时间窗口内的调用阈值;
根据当前时间戳以及所述滑动时间窗口确定第一时间区间;
统计所述第一时间区间内所述待调用接口的第一调用次数;
当所述第一调用次数大于所述调用阈值时,执行限流操作。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取缓存中的有序集;
根据所述有序集中的权重值确定所述滑动时间窗口。
3.根据权利要求1所述的方法,其特征在于,所述确定待调用接口在滑动时间窗口内的调用阈值,包括:
获取所述待调用接口的接口标识;
根据所述接口标识从缓存中查询所述待调用接口在每个滑动时间窗口内的调用阈值。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
当所述缓存中不存在所述待调用接口的调用阈值时,根据所述接口标识从数据库中读取所述待调用接口的调用阈值;
将所述调用阈值同步至所述缓存,并为所述调用阈值分配过期时间。
5.根据权利要求1所述的方法,其特征在于,所述统计所述第一时间区间内所述待调用接口的第一调用次数,包括:
确定起始时间至所述当前时间戳的第二时间区间;
获取所述第二时间区间内所述待调用接口的第二调用次数;
计算所述第二时间区间减去所述第一时间区间后得到的第三时间区间;
统计所述第三时间区间内所述待调用接口的第三调用次数;
计算所述第二调用次数与第三调用次数的差值,根据所述差值确定所述第一调用次数。
6.根据权利要求1所述的方法,其特征在于,所述执行限流操作,包括:
拒绝调用请求;
或,
将所述调用请求放入队列,并按照所述调用请求的优先级进行排序。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述第一调用次数小于或等于所述调用阈值时,将所述待调用接口的接口标识作为键名添加至缓存中的有序集,并在所述有序集中将所述接口标识对应的权重值以及键值更新为所述当前时间戳。
8.一种基于服务接口的限流装置,其特征在于,包括:
确定模块,用于确定待调用接口在滑动时间窗口内的调用阈值;
获取模块,用于根据当前时间戳以及所述滑动时间窗口确定第一时间区间;
统计模块,用于统计所述第一时间区间内所述待调用接口的第一调用次数;
执行模块,用于当所述第一调用次数大于所述调用阈值时,执行限流操作。
9.一种电子设备,其特征在于,包括:处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述计算机程序时,实现权利要求1-7任一项所述的方法步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1-7任一项所述的方法步骤。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于京东数字科技控股有限公司,未经京东数字科技控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010019040.6/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种电压暂降治理装置配置方法
- 下一篇:一种网络安全处理方法、终端及存储介质