限流控制方法、装置、设备及存储介质制造方法及图纸

技术编号:30965107 阅读:29 留言:0更新日期:2021-11-25 20:33
本申请公开了一种限流控制方法、装置、设备及存储介质,属于数据处理领域。限流控制方法包括:响应于本次请求,获取本次请求的第一时间戳;获取预先创建的限流实例,限流实例包括N个存储块、实例请求总数、限流请求数量阈值、前次请求的存储块的标识、前次请求的第二时间戳和请求等待时间,N个存储块与预设的单位时长划分的N个子时长段一一对应,存储块存储有与存储块对应的子时长段中的请求数量,实例请求总数为各存储块存储的请求数量之和;根据第一时间戳与第二时间戳之间的间隔时长、单位时长以及限流请求数量阈值,更新限流实例;根据更新后的限流实例中的请求等待时间,确定是否限流。根据本申请实施例能够提高限流控制的精准度。的精准度。的精准度。

【技术实现步骤摘要】
限流控制方法、装置、设备及存储介质


[0001]本申请属于数据处理领域,尤其涉及一种限流控制方法、装置、设备及存储介质。

技术介绍

[0002]随着网络技术的普及,网络用户的数量逐渐增多。对应地,网络用户在网络中发出或接收的请求的数量也越来越大。
[0003]为了保证应用程序、网络系统等的稳定性和健壮性,需要对请求进行限流,以防业务处理发生堵塞。在现阶段,可利用计数器在时间窗口内进行计数,当该时间窗口内计数器计数大于限流阈值时,拒绝请求。
[0004]但现阶段对请求的限流控制比较粗糙,精确度较差,降低了限流效果。

技术实现思路

[0005]本申请实施例提供一种限流控制方法、装置、设备及存储介质,能够提高限流控制的精准度。
[0006]第一方面,本申请实施例提供一种限流控制方法,包括:响应于本次请求,获取本次请求的第一时间戳;获取预先创建的限流实例,限流实例包括N个存储块、实例请求总数、限流请求数量阈值、前次请求的存储块的标识、前次请求的第二时间戳和请求等待时间,其中,N个存储块与预设的单位时长划分的N个子本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种限流控制方法,其特征在于,包括:响应于本次请求,获取本次请求的第一时间戳;获取预先创建的限流实例,所述限流实例包括N个存储块、实例请求总数、限流请求数量阈值、前次请求的所述存储块的标识、前次请求的第二时间戳和请求等待时间,其中,N个所述存储块与预设的单位时长划分的N个子时长段一一对应,N为大于1的整数,所述存储块存储有与所述存储块对应的所述子时长段中的请求数量,所述实例请求总数为各所述存储块存储的请求数量之和;根据所述第一时间戳与所述第二时间戳之间的间隔时长、所述单位时长以及所述限流请求数量阈值,更新所述限流实例;根据更新后的所述限流实例中的请求等待时间,确定是否限流。2.根据权利要求1所述的方法,其特征在于,所述根据所述第一时间戳与所述第二时间戳之间的间隔时长、所述单位时长以及所述限流请求数量阈值,更新所述限流实例,包括:在所述间隔时长小于或等于所述单位时长的情况下,将所述实例请求总数累计加一;根据所述第一时间戳和所述第二时间戳,确定所述第一时间戳所在的第一目标子时长段和所述第二时间戳所在的第二目标子时长段;将前次请求的所述存储块的标识更新为所述第一目标子时长段对应的所述存储块的标识;根据所述第一目标子时长段、所述第二目标子时长段以及所述限流请求数量阈值,更新所述实例请求总数、所述存储块中存储的请求数量和所述请求等待时间;将所述第二时间戳更新为第一时间戳。3.根据权利要求2所述的方法,其特征在于,所述根据所述第一目标子时长段、所述第二目标子时长段以及所述限流请求数量阈值,更新所述实例请求总数、所述存储块中存储的请求数量和所述请求等待时间,包括:在所述第一目标子时长段与第二目标子时长段一致的情况下,将所述第一目标子时长段对应的所述存储块存储的请求数量累计加一;保持除所述第一目标子时长段对应的所述存储块之外的其他所述存储块存储的请求数量和所述实例请求总数不变;根据所述限流请求数量阈值和更新后的所述实例请求总数,更新所述请求等待时间。4.根据权利要求2所述的方法,其特征在于,所述根据所述第一目标子时长段、所述第二目标子时长段以及所述限流请求数量阈值,更新所述实例请求总数、所述存储块中存储的请求数量和所述请求等待时间,包括:在所述第一目标子时长段与第二目标子时长段不一致,且所述第一目标子时长段位于所述第二目标子时长段之后的情况下,将所述实例请求总数减去第一无效存储块存储的请求数量之和,得到更新后的所述实例请求总数,所述第一无效存储块包括所述第一目标子时长段与所述第二目标子时长段之间的所述子时长段对应的所述存储块和所述第一目标子时长段对应的所述存储块;将所述第一目标子时长段对应的所述存储块存储的请求数量累计加一;根据所述限流请求数量阈值和更新后的所述实例请求总数,更新所述请求等待时间。5.根据权利要求2所述的方法,其特征在于,所述根据所述第一目标子时长段、所述第
二目标子时长段以及所述限流请求数量阈值,更新所述实例请求总数、所述存储块中存储的请求数量和所述请求等待时间,包括:在所述第一目标子时长段与第二目标子时长段不一致,且所述第一目标子时长段位于所述第二目标子时长段之前的情况下,将所述实例请求总数减去第二无效存储块存储的请求数量之和,所述第二无效存储块包括所述第二目标子时长段之后的所有所述子时长段对应的存储块、所述第一目标子时长段之前的所有所述子时长段对应的存储块和所述第一目标子时长段对应的存储块;将所述第一目标子时长段对应的所述存储块存储的请求数量累计加一;根据所述限流请求数量阈值和更新后的所述实例请求总数,更新所述请求等待时间。6.根据权利要求3至5中任意一项所述的方法,其特征在于,所述根据所述限流请求数量阈值和更新后的所述实例请求总数,更新所述请求等待时间,包括:在更新后的所述实例请求总数小于所述限流请求数量阈值的情况下,将所述请求等待时间更新为0;在更新后的所述实例请求总数大于或等于所...

【专利技术属性】
技术研发人员:陈林圣赞
申请(专利权)人:中国银联股份有限公司
类型:发明
国别省市:

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

1