【技术实现步骤摘要】
限流方法和限流装置
本专利技术涉及计算机
,尤其涉及一种限流方法和限流装置。
技术介绍
网络信息时代的来临,网络请求量的数量不断增加,比如用户增长过快、热点事件搜索以及刷子请求等等,其中刷子请求是指单位时间内请求量过高的恶意请求。网络请求量过多以及刷子请求的出现会影响用户访问,因此需要采取限流措施。目前,采用计数器算法和滑动窗口算法进行限流。其中,计数器算法的实现思路为限制单位时间内的请求数量,滑动窗口算法是通过设置多个时间窗口和每个窗口的请求量实现限流。但是,在实现本专利技术过程中,专利技术人发现现有技术中至少存在如下问题:一、现有技术的计算器算法和滑动窗口算法进行限流,如果没有对恶意请求进行判别,会导致用户不能正常访问;二、现有技术的计算器算法和滑动窗口算法进行限流,如果对恶意请求进行判别,需要对每个请求进行判断,代价比较大;三、此外,计算器算法存在突刺现象,在临界点可能带来2倍流量。
技术实现思路
有鉴于此,本专利技术实施例提供一种限流方法和限流装置,能够通过抽样统计可以减少统 ...
【技术保护点】
1.一种限流方法,其特征在于,包括:/n接收目标请求,根据所述目标请求携带的唯一标识,判断所述目标请求是否在验证请求池中;/n若是,则根据所述目标请求在所述验证请求池中对应的验证标识,对所述目标请求进行访问验证,若否,则利用预设的抽样系数,对所述目标请求进行访问验证;/n在访问验证通过的情况下,基于滑动窗口算法,对所述目标请求进行限流控制。/n
【技术特征摘要】 【专利技术属性】
1.一种限流方法,其特征在于,包括:
接收目标请求,根据所述目标请求携带的唯一标识,判断所述目标请求是否在验证请求池中;
若是,则根据所述目标请求在所述验证请求池中对应的验证标识,对所述目标请求进行访问验证,若否,则利用预设的抽样系数,对所述目标请求进行访问验证;
在访问验证通过的情况下,基于滑动窗口算法,对所述目标请求进行限流控制。
2.根据权利要求1所述的方法,其特征在于,所述利用预设的抽样系数,对所述目标请求进行访问验证,包括:
利用所述预设的抽样系数,对所述目标请求进行抽样;
在抽中所述目标请求的情况下,基于二项分布和正态分布,确定所述目标请求在第一时间区间的第一限流次数,并根据所述第一限流次数对所述目标请求进行访问验证;
在未抽中所述目标请求的情况下,确定所述目标请求访问验证通过。
3.根据权利要求2所述的方法,其特征在于,所述根据所述第一限流次数对所述目标请求进行访问验证,包括:
获取所述目标请求在所述第一时间区间的第一访问次数;
判断所述第一访问次数加一是否超过所述第一限流次数;
若是,则确定所述目标请求访问验证不通过,若否,则确定所述目标请求访问验证通过。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:在所述第一访问次数加一超过所述第一限流次数的情况下,将所述目标请求加入缓存请求池中,并利用所述缓存请求池定期同步所述验证请求池。
5.根据权利要求1所述的方法,其特征在于,所述根据所述目标请求在所述验证请求池中对应的验证标识,对所述目标请求进行访问验证,包括:
判断在所述验证请求池中是否具有所述目标请求对应的验证标识且所述验证标识未过期;
若是,则确定所述目标请求访问验证不通过;
若否,则确定所述目标请求在第二时间区间的第二限流次数,并根据所述第二限流次数对所述目标请求进行访问验证。
技术研发人员:申浩亮,
申请(专利权)人:北京沃东天骏信息技术有限公司,北京京东世纪贸易有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。