一种限流计数的优化方法及终端技术

技术编号:21059330 阅读:38 留言:0更新日期:2019-05-08 06:29
本发明专利技术公开了一种限流计数的优化方法及终端,通过在每一接口中新增记录被调用次数的第一计数信息,定时将每一个实例中汇总的每一接口对应的第一计数信息推送至redis集群队列,定时取出redis集群队列中所有包括实例标识和对应的第一计数信息的第二计数信息,处理得到每一接口的总请求量,将所述每一接口的总请求量存入所述redis集群队列中,无需操作IO,可以降低维护计数器的消耗,需要限流的接口只需访问redis集群队列获取总请求量,提高中心节点汇总数据的高效性,提高接口效率。

【技术实现步骤摘要】
一种限流计数的优化方法及终端
本专利技术涉及互联网产品
,尤其是涉及一种限流计数的优化方法及终端。
技术介绍
在开发高并发终端时通常采用缓存、降级和限流来保护终端,缓存的目的是提升终端访问速度和增大终端能处理的容量,是抗高并发流量的有力手段;降级是当服务出问题或影响到核心流程的性能时则暂时屏蔽,待高峰过去或问题解决后再打开;有些场景并不能用缓存和降级来解决,比如稀缺资源(秒杀、抢购)、写服务(如评论、下单)、频繁的复杂查询(评论的最后几页),因此通过限流来限制这些场景的并发/请求量,限流的目的是通过对并发访问/请求进行限速或者一个时间窗口内的的请求进行限速来保护终端,一旦达到限制速率则可以拒绝服务(定向到错误页或告知资源没有了)、排队或等待(比如秒杀、评论、下单)、降级(返回兜底数据或默认数据,如商品详情页库存默认有货)。在限流中分为单机限流以及分布式限流两种方案,二者主要的区别是在分布式限流中,接口请求计数器需要中心化存储,即多个实例的接口请求数量需要存储在一个中心点中,而不是像单机限流方案中只存储在本地实例中。此时,需要开发人员自己维护一个中心计数器来计算统计各个实例的总数本文档来自技高网...

【技术保护点】
1.一种限流计数的优化方法,其特征在于,包括步骤:S1、在每一接口中新增第一计数信息,记录该接口被调用的次数;S2、定时将每一个实例中汇总的每一接口对应的第一计数信息推送至redis集群队列;S3、定时取出redis集群队列中所有的第二计数信息,所述第二计数信息包括实例标识和对应的第一计数信息,处理得到每一接口的总请求量,将所述每一接口的总请求量存入所述redis集群队列中。

【技术特征摘要】
1.一种限流计数的优化方法,其特征在于,包括步骤:S1、在每一接口中新增第一计数信息,记录该接口被调用的次数;S2、定时将每一个实例中汇总的每一接口对应的第一计数信息推送至redis集群队列;S3、定时取出redis集群队列中所有的第二计数信息,所述第二计数信息包括实例标识和对应的第一计数信息,处理得到每一接口的总请求量,将所述每一接口的总请求量存入所述redis集群队列中。2.根据权利要求1所述的一种限流计数的优化方法,其特征在于,所述第一计数信息包括接口类型和对应的被调用的数量。3.根据权利要求1或2所述的一种限流计数的优化方法,其特征在于,所述步骤S2中所述定时将每一个实例中汇总的每一接口对应的第一计数信息推送至redis集群队列之后还包括:将该实例中每一接口对应的第一计数信息中的被调用的数量清零。4.根据权利要求1所述的一种限流计数的优化方法,其特征在于,所述步骤S2中通过异步处理的方式定时将每一个实例中汇总的每一接口对应的第一计数信息推送至redis集群队列。5.根据权利要求2所述的一种限流计数的优化方法,其特征在于,步骤S3中所述定时取出redis集群队列中的所有第二计数信息,处理得到每一接口的总请求量具体为:获取所述redis集群中所有的所述第二计数信息,根据所述第二计数信息中包含的接口类型分别对与所述接口类型对应的所有被调用的数量进行累加,得到每一接口类型的总请求量。6.一种限流计数的优化终端,包括存储器、处理器及存储...

【专利技术属性】
技术研发人员:刘德建林伟郭玉湖
申请(专利权)人:福建天泉教育科技有限公司
类型:发明
国别省市:福建,35

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1