本申请涉及互联网,具体而言,涉及服务器的访问限流方法、电子设备和存储介质。
背景技术:
1、服务器在接收到大量访问请求时,通常需要通过限流的方式来降低访问请求的数量,从而降低服务器的运算压力,防止因大量的访问请求导致服务器产生运行缓慢甚至宕机的现象。
2、目前的限流方式通常是设置一个固定的限流额度,从而针对各个客户端的访问请求,并将访问请求的频率超过该限流额度的客户端进行限流。但这种设置固定限流额度的限流方式,由于是利用该固定限流额度来无差别地针对各个客户端,因此限流效果通常较差。
技术实现思路
1、本申请实施例的目的在于提供服务器的访问限流方法、电子设备和存储介质,用于解决现有限流方式效果较差的问题。
2、本申请实施例第一方面提供了一种服务器的访问限流方法,包括:
3、确定客户端的访问频率;
4、判断所述访问频率是否大于动态限流额度,其中,所述动态限流额度通过服务器的最大处理额度和所述客户端的访问频率动态计算得到;
5、在所述访问频率大于所述动态限流额度的情况下,对所述客户端进行限流。
6、优选的,所述方法还包括:
7、根据所述服务器的最大处理额度和所述客户端的访问频率,计算出所述动态限流额度。
8、优选的,根据所述服务器的最大处理额度和所述客户端的访问频率,计算出所述动态限流额度,具体包括:
9、确定所述客户端的网络状态评分;
10、根据所述服务器的最大处理额度、所述客户端的网络状态评分和所述客户端的访问频率,计算出所述动态限流额度。
11、优选的,根据所述服务器的最大处理额度、所述客户端的网络状态评分和所述客户端的访问频率,计算出所述动态限流额度,具体包括通过如下的第一动态限流额度计算公式,计算所述动态限流额度:
12、
13、其中:l为所计算出的动态限流额度;m为所述服务器的最大处理额度;f1为所述客户端的访问频率;k1为访问频率放大系数;a为用于表征客户端重要性等级的资源分配系数;b为所述客户端的网络状态评分。
14、优选的,根据所述服务器的最大处理额度、所述客户端的网络状态评分和所述客户端的访问频率,计算出所述动态限流额度,具体包括通过如下的第二动态限流额度计算公式,计算所述动态限流额度:
15、
16、其中:l为所计算出的动态限流额度;m为所述服务器的最大处理额度;a为用于表征客户端重要性等级的资源分配系数;b为所述客户端的网络状态评分;fi为第i个周期中客户端的访问频率;ki为第i个周期的访问频率放大系数;n为所累计的周期数量。
17、优选的,确定所述客户端的网络状态评分,具体包括:
18、向所述客户端发送网络状态检测信号;
19、根据所述客户端对所述网络状态检测信号的响应时间的长短,来确定所述客户端的网络状态等级;
20、利用所述客户端的网络状态等级查询网络状态评分表,以确定所述客户端的网络状态评分。
21、优选的,根据所述服务器的最大处理额度和所述客户端的访问频率,计算出所述动态限流额度,具体包括:
22、在所述客户端的访问频率大于预设阈值的情况下,根据所述服务器的最大处理额度和所述客户端的访问频率,计算出所述动态限流额度,其中,所述预设阈值小于所述动态限流额度。
23、优选的,在确定客户端的访问频率之前,所述方法还包括:
24、获取客户端的访问请求,所述访问请求携带授权信息;
25、根据所述授权信息判断所述客户端是否有访问权限;以及,
26、确定客户端的访问频率,具体包括:
27、在所述客户端有访问权限的情况下,确定客户端的访问频率。
28、本申请实施例第二方面提供了一种电子设备,包括:
29、存储器,用以存储计算机程序;
30、处理器,用以执行本申请方法实施例中任一项所述的方法。
31、本申请实施例第三方面提供了一种存储介质,包括:程序,当其在电子设备上运行时,使得电子设备可执行本申请方法实施例中任一项所述的方法。
32、采用本申请实施例所提供的服务器的访问限流方法,包括确定客户端的访问频率,然后判断该客户端的访问频率是否大于动态限流额度,并且在该访问频率大于动态限流额度的情况下,对该客户端进行限流。该方法中,由于动态限流额度通过服务器的最大处理额度和该客户端的访问频率动态计算得到,而不同客户端的访问频率通常并不相同,并且即使是同一个客户端,其不同时间的访问频率也通常不同,因此客户端的动态限流额度也会是动态变化的,这样使得方法能够针对不同客户端设置不同的动态限流额度,并基于该动态限流额度对客户端进行限流,从而能够提高限流效果。
1.一种服务器的访问限流方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
3.根据权利要求2所述的方法,其特征在于,根据所述服务器的最大处理额度和所述客户端的访问频率,计算出所述动态限流额度,具体包括:
4.根据权利要求3所述的方法,其特征在于,根据所述服务器的最大处理额度、所述客户端的网络状态评分和所述客户端的访问频率,计算出所述动态限流额度,具体包括通过如下的第一动态限流额度计算公式,计算所述动态限流额度:
5.根据权利要求3所述的方法,其特征在于,根据所述服务器的最大处理额度、所述客户端的网络状态评分和所述客户端的访问频率,计算出所述动态限流额度,具体包括通过如下的第二动态限流额度计算公式,计算所述动态限流额度:
6.根据权利要求3所述的方法,其特征在于,确定所述客户端的网络状态评分,具体包括:
7.根据权利要求2所述的方法,其特征在于,根据所述服务器的最大处理额度和所述客户端的访问频率,计算出所述动态限流额度,具体包括:
8.根据权利要求1所述的方法,其特征在于,在确定客户端的访问频率之前,所述方法还包括:
9.一种电子设备,其特征在于,包括:
10.一种存储介质,其特征在于,包括:程序,当其在电子设备上运行时,使得电子设备可执行如权利要求1至8中任一项所述的方法。