[发明专利]API分布式限流的实现方法有效
申请号: | 201910498355.0 | 申请日: | 2019-06-10 |
公开(公告)号: | CN110276182B | 公开(公告)日: | 2020-12-22 |
发明(设计)人: | 李勇;张斌 | 申请(专利权)人: | 必成汇(成都)科技有限公司 |
主分类号: | G06F21/31 | 分类号: | G06F21/31;G06F21/45;G06F9/54;H04L12/801;H04L12/819 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 610000 四川省成都市*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | api 分布式 限流 实现 方法 | ||
1.一种API分布式限流的控制方法,其特征在于,包括以下步骤:
S1,在API系统运行前或运行时,将接口级限流值、用户级接口访问权限和用户级接口限流值的访问限流规则按照限流频次分别配置到数据库中,所述限流频次包括限流周期和限流值;
S2,服务端收到用户发送的API请求后,对API参数进行签名校验;校验通过后,根据API参数中的用户标识key,在限流组件中通过Realm实现查询用户与下单接口对应的限流规则,查询成功后,通过集群Redis lua脚本,获取Redis集群中该用户级和接口级限流的令牌;判断本次接口调用是否符合所述S1的限流规则;待校验通过后,接口调用成功,否则调用失败并返回对应的异常码;
所述API请求中的API参数包括用户key信息、下单的数量和价格;
所述获取Redis集群中该用户级和接口级限流的令牌是按照令牌桶中当前限流频次计数器的数量是否大于用户级和接口级限流值的规则进行的,具体过程为:
若规则判断通过则获得成功,并设置令牌桶中对应限流频次计数器+1;
若在当前限流频次中第一次获取令牌,则再设置该令牌桶频次计数器过期时间为当前时间+1个限流频次周期,判断本次接口调用是否符合该用户的结构权限及限流。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于必成汇(成都)科技有限公司,未经必成汇(成都)科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910498355.0/1.html,转载请声明来源钻瓜专利网。