流量限制方法、装置、设备及存储介质与流程
- 国知局
- 2025-01-10 13:39:13
本技术涉及计算机,尤其涉及一种流量限制方法、装置、设备及存储介质。
背景技术:
1、随着互联网的高速发展,用户的规模和需求也在急剧增长,在一些场景下,需要限制流量以保证服务器能够正常运行,例如,当某一时刻用户访问量过高时,可能会导致服务器崩溃。
2、在相关技术中,通常采用令牌桶算法对访问设备进行限流处理。令牌桶算法可以在预设的令牌桶(一种逻辑上的容器,用于存储令牌)中生成令牌,只有当令牌桶中有令牌时,系统才会发放令牌给访问设备;服务器在确认访问设备持有令牌后,才会允许访问设备的访问请求,否则将拒绝该请求,从而达到流量限制的效果。
3、然而,在上述方法中,当令牌桶中不存在令牌时,可能会导致已经处于服务状态的用户被拒绝访问,导致流量限制的灵活性较差。
技术实现思路
1、本技术提供一种流量限制方法、装置、设备及存储介质,用以解决用户类型确定准确性较差的问题。
2、第一方面,本技术提供一种流量限制方法,应用于第一服务器,所述方法包括:
3、接收第一设备发送的第一访问请求,所述第一访问请求用于请求访问目标系统;
4、根据所述访问请求,确定所述目标系统的当前访问量;
5、若所述当前访问量大于或等于第一阈值,则根据所述第一访问请求,确定所述第一设备的设备类型,所述设备类型为第一类型或者第二类型,所述第一类型用于指示所述第一设备在当前时刻之前的预设时长内访问过所述目标系统,所述第二类型用于指示所述第一设备在当前时刻之前的预设时长内未访问过所述目标系统;
6、根据所述第一设备的设备类型,对所述第一访问请求进行处理。
7、在一种可能的设计中,根据所述第一访问请求,确定所述第一设备的设备类型,包括:
8、判断所述第一访问请求中是否包括第一访问令牌;
9、若是,则根据所述第一访问令牌和所述第一服务器对应的令牌列表,确定所述第一设备的设备类型;
10、若否,则确定所述第一设备的设备类型为所述第二类型。
11、在一种可能的设计中,根据所述第一访问令牌和所述第一服务器对应的令牌列表,确定所述第一设备的设备类型,包括:
12、判断所述令牌列表中是否包括所述第一访问令牌;
13、若是,则获取所述第一访问令牌的令牌失效时刻,并根据所述令牌失效时刻和当前时刻,确定所述第一设备的设备类型;
14、若否,则在所述第一访问请求中获取历史访问信息,并根据所述历史访问信息,确定所述第一设备的设备类型。
15、在一种可能的设计中,根据所述令牌失效时刻和当前时刻,确定所述第一设备的设备类型,包括:
16、若所述令牌失效时刻位于所述当前时刻之后,则确定所述第一设备的设备类型为所述第一类型;
17、若所述令牌失效时刻位于所述当前时刻之前,则确定所述第一设备的设备类型为所述第二类型。
18、在一种可能的设计中,根据所述历史访问信息,确定所述第一设备的设备类型,包括:
19、根据所述历史访问信息,确定所述第一设备上一次对所述目标系统的访问时刻;
20、若所述访问时刻与当前时刻之间的时间差大于或等于预设时长,则确定所述第一设备的设备类型为所述第二类型;
21、若所述访问时刻与所述当前时刻之间的时间差小于所述预设时长,则在所述历史访问信息中确定所述第一设备上一次访问所述目标系统时所访问的第二服务器,并向所述第二服务器发送切换请求,所述切换请求用于请求所述第二服务器对所述第一访问请求进行处理。
22、在一种可能的设计中,根据所述第一设备的设备类型,对所述第一访问请求进行处理,包括:
23、获取所述目标系统对应的剩余访问量;
24、若所述剩余访问量大于0,则对所述第一访问请求进行业务处理,以使所述第一设备访问所述目标系统;
25、若所述剩余访问量等于0,则根据所述第一设备的设备类型,对所述第一访问请求进行缓存处理,以限制所述第一设备访问所述目标系统。
26、在一种可能的设计中,根据所述第一设备的设备类型,对所述第一访问请求进行缓存处理,包括:
27、若所述第一设备的设备类型为所述第一类型,则将第一访问请求添加至第一队列,所述第一队列中用于存储所述第一类型的设备发送的、且限制访问所述目标系统的访问请求;
28、若所述第一设备的设备类型为所述第二类型,则将第一访问请求添加至第二队列,所述第二队列中用于存储所述第二类型的设备发送的、且限制访问所述目标系统的访问请求。
29、在一种可能的设计中,所述方法还包括:
30、在所述剩余访问量从0切换为n时,确定所述第一队列中存在的访问请求的第一数量m,所述n为正整数,所述m为整数;
31、若所述m大于或等于所述n,则控制所述前n个访问请求对应的终端设备访问所述目标系统;
32、若所述m小于所述n,则控制所述第一队列中的m个访问请求对应的终端设备访问所述目标系统,以及控制所述第二队列中前n-m个访问请求对应的终端设备访问所述目标系统。
33、第二方面,本技术提供一种流量限制装置,包括:接收模块、第一确定模块、第二确定模块和处理模块,其中,
34、所述接收模块用于,接收第一设备发送的第一访问请求,所述第一访问请求用于请求访问目标系统;
35、所述第一确定模块用于,根据所述访问请求,确定所述目标系统的当前访问量;
36、所述第二确定模块用于,若所述当前访问量大于或等于第一阈值,则根据所述第一访问请求,确定所述第一设备的设备类型,所述设备类型为第一类型或者第二类型,所述第一类型用于指示所述第一设备在当前时刻之前的预设时长内访问过所述目标系统,所述第二类型用于指示所述第一设备在当前时刻之前的预设时长内未访问过所述目标系统;
37、所述处理模块用于,根据所述第一设备的设备类型,对所述第一访问请求进行处理。
38、在一种可能的设计中,第二确定模块具体用于:
39、判断所述第一访问请求中是否包括第一访问令牌;
40、若是,则根据所述第一访问令牌和所述第一服务器对应的令牌列表,确定所述第一设备的设备类型;
41、若否,则确定所述第一设备的设备类型为所述第二类型。
42、在一种可能的设计中,第二确定模块具体用于:
43、判断所述令牌列表中是否包括所述第一访问令牌;
44、若是,则获取所述第一访问令牌的令牌失效时刻,并根据所述令牌失效时刻和当前时刻,确定所述第一设备的设备类型;
45、若否,则在所述第一访问请求中获取历史访问信息,并根据所述历史访问信息,确定所述第一设备的设备类型。
46、在一种可能的设计中,第二确定模块具体用于:
47、若所述令牌失效时刻位于所述当前时刻之后,则确定所述第一设备的设备类型为所述第一类型;
48、若所述令牌失效时刻位于所述当前时刻之前,则确定所述第一设备的设备类型为所述第二类型。
49、在一种可能的设计中,第二确定模块具体用于:
50、根据所述历史访问信息,确定所述第一设备上一次对所述目标系统的访问时刻;
51、若所述访问时刻与当前时刻之间的时间差大于或等于预设时长,则确定所述第一设备的设备类型为所述第二类型;
52、若所述访问时刻与所述当前时刻之间的时间差小于所述预设时长,则在所述历史访问信息中确定所述第一设备上一次访问所述目标系统时所访问的第二服务器,并向所述第二服务器发送切换请求,所述切换请求用于请求所述第二服务器对所述第一访问请求进行处理。
53、在一种可能的设计中,处理模块具体用于:
54、获取所述目标系统对应的剩余访问量;
55、若所述剩余访问量大于0,则对所述第一访问请求进行业务处理,以使所述第一设备访问所述目标系统;
56、若所述剩余访问量等于0,则根据所述第一设备的设备类型,对所述第一访问请求进行缓存处理,以限制所述第一设备访问所述目标系统。
57、在一种可能的设计中,处理模块具体用于:
58、若所述第一设备的设备类型为所述第一类型,则将第一访问请求添加至第一队列,所述第一队列中用于存储所述第一类型的设备发送的、且限制访问所述目标系统的访问请求;
59、若所述第一设备的设备类型为所述第二类型,则将第一访问请求添加至第二队列,所述第二队列中用于存储所述第二类型的设备发送的、且限制访问所述目标系统的访问请求。
60、在一种可能的设计中,处理模块还包括第三确定模块、第一控制模块和第二控制模块:
61、所述第三确定模块用于,在所述剩余访问量从0切换为n时,确定所述第一队列中存在的访问请求的第一数量m,所述n为正整数,所述m为整数;
62、所述第一控制模块用于,若所述m大于或等于所述n,则控制所述前n个访问请求对应的终端设备访问所述目标系统;
63、所述第二控制模块用于,若所述m小于所述n,则控制所述第一队列中的m个访问请求对应的终端设备访问所述目标系统,以及控制所述第二队列中前n-m个访问请求对应的终端设备访问所述目标系统。
64、第三方面,本技术实施例提供一种电子设备,包括:至少一个处理器和存储器;存储器存储计算机执行指令;至少一个处理器执行存储器存储的计算机执行指令,使得至少一个处理器执行如上第一方面以及第一方面各种可能的设计的流量限制方法。
65、第四方面,本技术实施例提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,当处理器执行计算机执行指令时,实现如上第一方面以及第一方面各种可能的设计的流量限制方法。
66、第五方面,本技术实施例提供一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时,实现如上第一方面以及第一方面各种可能的设计的流量限制方法。
67、本技术提供的流量限制方法、装置、设备及存储介质,当服务器获取到访问请求后,根据当前访问量确定是否需要进行流量限制,若当前访问量大于或等于第一阈值,则表明需要进行流量限制,根据访问请求可以确定访问设备的设备类型,根据访问设备的设备类型从而确定访问请求的处理方式,提高了流量限制的灵活性。
本文地址:https://www.jishuxx.com/zhuanli/20250110/354467.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。