CN108494703B - 一种访问频率控制方法、装置及存储介质 - Google Patents

一种访问频率控制方法、装置及存储介质 Download PDF

Info

Publication number
CN108494703B
CN108494703B CN201810191962.8A CN201810191962A CN108494703B CN 108494703 B CN108494703 B CN 108494703B CN 201810191962 A CN201810191962 A CN 201810191962A CN 108494703 B CN108494703 B CN 108494703B
Authority
CN
China
Prior art keywords
token
service
frequency control
access
client
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810191962.8A
Other languages
English (en)
Other versions
CN108494703A (zh
Inventor
刘德刚
陈峥
严俊明
刘斌
朱戈
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Tencent Cloud Computing Beijing Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Tencent Cloud Computing Beijing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd, Tencent Cloud Computing Beijing Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201810191962.8A priority Critical patent/CN108494703B/zh
Publication of CN108494703A publication Critical patent/CN108494703A/zh
Application granted granted Critical
Publication of CN108494703B publication Critical patent/CN108494703B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/215Flow control; Congestion control using token-bucket
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明实施例公开了一种访问频率控制方法、装置及存储介质,本发明实施例通过接收客户端发送的业务访问请求,业务访问请求中携带客户端标识;确定与客户端标识对应的令牌桶标识,并查询与令牌桶标识对应的本地令牌桶;当根据本地令牌桶中的令牌确定客户端的访问频率大于预设阈值时,向频控服务器集群发送令牌申请请求;接收频控服务器集群基于令牌申请请求返回的令牌,并根据得到的令牌为业务访问请求对应的业务提供访问服务。该方案可以根据客户端标识维护每个客户端对应的本地令牌桶中的令牌,以及通过频控服务器集群维护预存的令牌桶中的令牌,通过令牌桶中的令牌对客户端的访问频率进行有效控制,提高了对访问频率进行控制的精确性。

Description

一种访问频率控制方法、装置及存储介质
技术领域
本发明涉及通信技术领域,具体涉及一种访问频率控制方法、装置及存储介质。
背景技术
通常网络中的业务服务器要面对海量的客户端,其中不乏有恶意攻击、流量突增或者活动等引起的大规模访问,若对于某个客户端的访问频次,不做出有效的控制,则很容易引起业务服务器整体集群的崩溃,进而影响到其它客户端的正常访问。
现有技术中,当需要对访问频率进行控制时,一般是在业务服务器集群中的单台业务服务器上部署频率控制模块,通过频率控制模块针对某些网络之间互连的协议(Internet Protocol,IP)或具有一些特征等的客户端做出访问限制;或者,在业务服务器集群中单独部署频率控制模块,通过频率控制模块对所有客户端统一做出整体的访问限制。
在对现有技术的研究和实践过程中,本发明的发明人发现,针对单台业务服务器的访问频率进行控制,当集群负载不均时,很容易造成访问频率控制不够精确,从而对业务造成威胁,即影响业务的执行;业务服务器集群中单独设置的频控模块,又面临高频的每秒查询率(Query Per Second,QPS)的冲击,当QPS很高或网络异常或者频率控制模块异常时,存在业务服务器崩溃的风险,导致业务服务器无法对访问频率进行有效控制。
发明内容
本发明实施例提供一种访问频率控制方法、装置及存储介质,旨在提高对访问频率进行控制的精确性。
为解决上述技术问题,本发明实施例提供以下技术方案:
一种访问频率控制方法,包括:
接收客户端发送的业务访问请求,所述业务访问请求中携带客户端标识;
确定与所述客户端标识对应的令牌桶标识,并查询与所述令牌桶标识对应的本地令牌桶;
当根据所述本地令牌桶中的令牌确定所述客户端的访问频率大于预设阈值时,向频控服务器集群发送令牌申请请求;
接收所述频控服务器集群基于所述令牌申请请求返回的令牌,并根据得到的令牌为所述业务访问请求对应的业务提供访问服务。
一种访问频率控制装置,包括:
第一接收单元,用于接收客户端发送的业务访问请求,所述业务访问请求中携带客户端标识;
确定单元,用于确定与所述客户端标识对应的令牌桶标识,并查询与所述令牌桶标识对应的本地令牌桶;
发送单元,用于当根据所述本地令牌桶中的令牌确定所述客户端的访问频率大于预设阈值时,向频控服务器集群发送令牌申请请求;
控制单元,用于接收所述频控服务器集群基于所述令牌申请请求返回的令牌,并根据得到的令牌为所述业务访问请求对应的业务提供访问服务。
一种存储介质,所述存储介质存储有多条指令,所述指令适于处理器进行加载,以执行上述访问频率控制方法中的步骤。
本发明实施例在接收到客户端发送的携带客户端标识的业务访问请求时,可以确定与客户端标识对应的令牌桶标识,并查询与令牌桶标识对应的本地令牌桶;当根据本地令牌桶中的令牌确定客户端的访问频率大于预设阈值时,向频控服务器集群发送令牌申请请求;然后接收频控服务器集群基于令牌申请请求返回的令牌,并根据得到的令牌为业务访问请求对应的业务提供访问服务。该方案可以根据客户端标识维护每个客户端对应的本地令牌桶中的令牌,以及通过频控服务器集群维护预存的令牌桶中的令牌,通过令牌桶中的令牌对客户端的访问频率进行有效控制,提高了对访问频率进行控制的精确性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的访问频率控制***的场景示意图;
图2是本发明实施例提供的访问频率控制方法的流程示意图;
图3是本发明实施例提供的访问频率控制的架构图;
图4是本发明实施例提供的访问频率控制方法的另一流程示意图;
图5是本发明实施例提供的访问频率控制的令牌交互示意图;
图6是本发明实施例提供的存储服务器集群对访问频率存储示意图;
图7是本发明实施例提供的访问频率控制装置的结构示意图;
图8是本发明实施例提供的访问频率控制装置的另一结构示意图;
图9是本发明实施例提供的访问频率控制装置的另一结构示意图;
图10是本发明实施例提供的访问频率控制装置的另一结构示意图;
图11是本发明实施例提供的访问频率控制装置的另一结构示意图;
图12是本发明实施例提供的服务器的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供一种访问频率控制方法、装置及存储介质。
请参阅图1,图1为本发明实施例所提供的访问频率控制***的场景示意图,该访问频率控制***可以包括访问频率控制装置,该访问频率控制装置具体可以集成在服务器集群中,例如,业务服务器集群,主要用于接收客户端发送的业务访问请求,其中,业务访问请求中可以携带客户端标识,该客户端标识可以是客户端名称或客户端编号等,可以由数字、字母和/或文字等组成。然后,确定与客户端标识对应的令牌桶标识,并查询与令牌桶标识对应的本地令牌桶;当根据本地令牌桶中的令牌确定客户端的访问频率大于预设阈值时,向频控服务器集群发送令牌申请请求;例如,当本地令牌桶中不存在令牌时,说明该客户端的访问频率较高,确定客户端的访问频率大于预设阈值,此时向频控服务器集群发送令牌申请请求。最后,接收频控服务器集群基于令牌申请请求返回的令牌,并根据得到的令牌为业务访问请求对应的业务提供访问服务,等等。
此外,该访问频率控制***还可以包括频控服务器集群,该频控服务器集群主要用于接收业务服务器集群发送的令牌申请请求,并根据该令牌申请请求查询预存的令牌桶,当令牌桶中存在令牌时,向业务服务器集群返回令牌申请请求所需的令牌等。
需要说明的是,图1所示的访问频率控制***的场景示意图仅仅是一个示例,本发明实施例描述的访问频率控制***以及场景是为了更加清楚的说明本发明实施例的技术方案,并不构成对于本发明实施例提供的技术方案的限定,本领域普通技术人员可知,随着访问频率控制***的演变和新业务场景的出现,本发明实施例提供的技术方案对于类似的技术问题,同样适用。
以下分别进行详细说明。
在本实施例中,将从访问频率控制装置的角度进行描述,该访问频率控制装置具体可以集成在服务器集群或网关等网络设备中。
一种访问频率控制方法,包括:接收客户端发送的业务访问请求,业务访问请求中携带客户端标识;确定与客户端标识对应的令牌桶标识,并查询与令牌桶标识对应的本地令牌桶;当根据本地令牌桶中的令牌确定客户端的访问频率大于预设阈值时,向频控服务器集群发送令牌申请请求;接收频控服务器集群基于令牌申请请求返回的令牌,并根据得到的令牌为业务访问请求对应的业务提供访问服务。
请参阅图2,图2是本发明一实施例提供的访问频率控制方法的流程示意图。该访问频率控制方法可以包括:
在步骤S101中,接收客户端发送的业务访问请求,业务访问请求中携带客户端标识。
其中,客户端可以是集成在手机或电脑等终端上,当终端上需要执行某个业务时,可以通过客户端向访问频率控制装置发送业务访问请求,访问频率控制装置接收该业务访问请求,该业务访问请求中可以携带业务标识和客户端标识等信息。该客户端标识可以是客户端名称或客户端编号等,可以由数字、字母和/或文字等组成,具体内容在此处不作限定。该业务访问请求的类型可以根据实际需要进行灵活设置,例如,可以是邮件业务访问请求或微博业务访问请求等,具体内容在此处不作限定。
需要说明的是,该访问频率控制装置可以是业务服务器集群(也可以称为业务集群),该业务服务器集群可以包括一个或多个,其中,多个业务服务器集群可以包括为多个为客户端提供不同类型业务服务的业务服务器集群,例如,邮件业务服务器集群或微博业务服务器集群等,相对应的可分别向客户端提供邮件业务或微博业务等;每个业务服务器集群中可包括多个同一业务类型的业务服务器。业务服务器集群中可以包括接入服务器和频控代理服务器等,该接入服务器可以包括一个或多个,该频控代理服务器可以包括一个或多个。业务服务器集群在接收到客户端发送的业务访问请求时,可以将业务访问请求转到某台接入服务器上,并由该接入服务器向频控代理服务器(也可以称为频控Agent)发起频控请求,使得频控代理服务器根据频控请求对客户端的访问频率进行控制。
在步骤S102中,确定与客户端标识对应的令牌桶标识,并查询与令牌桶标识对应的本地令牌桶。
为了有效对每个客户端的访问频率进行控制,访问频率控制装置可以预先通过标识维护客户端与本地令牌桶之间的映射关系,即建立客户端标识与令牌桶标识之间的映射关系,使得每个客户端存在与其对应的本地令牌桶。该令牌桶标识可以是令牌桶名称或令牌桶编号等,可以由数字、字母和/或文字等组成,具体内容在此处不作限定。
其中,本地令牌桶中可以存储有令牌,本地令牌桶主要用于对客户端的访问频率进行控制,例如,可以通过本地令牌桶中是否存在令牌来指示是否可以允许客户端访问,即若本地令牌桶中存在令牌,则可以为客户端提供访问服务,若本地令牌桶中不存在令牌,则不为客户端提供访问服务。本地令牌桶中的每一个令牌可以代表为客户端提供访问服务的次数,例如,一个令牌可以为客户端提供一次或多次的访问服务;或者是,本地令牌桶中的每一个令牌可以代表为客户端提供访问服务的时间段,例如一个令牌可以为客户端提供1秒或3秒内的访问服务;或者是,本地令牌桶中的每一个令牌可以代表每秒内为客户端提供访问服务的次数,即本地令牌桶中的每一个令牌可以代表每秒内允许客户端访问的次数(即客户端的访问频率)等。可以理解的是,令牌可以代表的权限可以根据实际需要进行灵活设置,具体内容在此不作限定。
本地令牌桶的工作过程可以包括:产生令牌、消耗令牌和判断是否为客户端提供访问服务等。其中,产生令牌可以是周期性的以预设速率向本地令牌桶中增加令牌,使得本地令牌桶中的令牌不断增多,如果本地令牌桶中令牌数超过预设数量阈值,则可以丢弃多余的令牌。消耗令牌可以是在为客户端提供访问服务时会消耗本地令牌桶中的令牌,以便统计客户端访问频率,该访问频率可以是每秒内访问的次数,或每分钟内访问的次数等。判断是否为客户端提供访问服务可以是,当本地令牌桶中的令牌数量可以满足业务访问请求对应的业务对令牌的需求时,可以为客户端提供访问服务,否则不为客户端提供访问服务。
在接收到客户端发送的携带客户端标识的业务访问请求后,访问频率控制装置可以从业务访问请求中提取出客户端标识,并根据客户端标识与令牌桶标识之间的映射关系,确定与客户端标识对应的令牌桶标识。然后获取与令牌桶标识对应的本地令牌桶,查询该本地令牌桶,该本地令牌桶可以是访问频率控制装置本地预置的令牌桶。即当根据本地令牌桶中的令牌判断客户端的访问频率,例如,当本地令牌桶中存在令牌时,可以确定客户端的访问频率小于或等于预设阈值;当本地令牌桶中不存在令牌时,可以确定客户端的访问频率大于预设阈值。
在某些实施方式中,确定与客户端标识对应的令牌桶标识,并查询与令牌桶标识对应的本地令牌桶的步骤之后,访问频率控制方法还可以包括:
当本地令牌桶中存在令牌时,从本地令牌桶中获取业务访问请求所需的令牌;根据获取到的令牌为业务访问请求对应的业务提供访问服务。
访问频率控制装置在查询本地令牌桶的过程中,当查询到本地令牌桶中存在令牌时,说明该客户端的访问频率小于或等于预设阈值,此时可以从本地令牌桶中获取业务访问请求所需的令牌。其中,该预设阈值可以根据实际需要进行灵活设置,业务访问请求所需的令牌的数量可以是一个或多个,当业务访问请求所需的令牌的数量为多个时,可以当查询到本地令牌桶中存在业务访问请求所需的令牌时,从本地令牌桶中获取业务访问请求所需的令牌。在获取到令牌后,访问频率控制装置可以根据获取到的令牌为业务访问请求对应的业务提供访问服务。
需要说明的是,当令牌桶中的每一个令牌代表每周期内为客户端提供访问服务的次数时,频率控制装置在查询到本地令牌桶中存在令牌时,可以判断当前时刻是否需要更新本地令牌桶中的令牌,例如,如果当前时刻仍在当前令牌周期内,则不会更新本地令牌桶中的令牌;如果当前时刻已经进入下一个新的令牌周期内,则从本地令牌桶中扣减业务访问请求所需的令牌,更新本地令牌桶中的令牌。当令牌更新成功时,可以为客户端提供访问服务;当令牌更新失败时,可以重试预设次数,若成功,则为客户端提供访问服务,若失败,则不为客户端提供访问服务,并返回失败信息给客户端。
在步骤S103中,当根据本地令牌桶中的令牌确定客户端的访问频率大于预设阈值时,向频控服务器集群发送令牌申请请求。
访问频率控制装置在查询本地令牌桶的过程中,当根据本地令牌桶中的令牌确定该客户端的访问频率大于预设阈值时,说明该客户端的访问频率较大,例如,当查询到本地令牌桶中不存在令牌时,可以确定该客户端的访问频率大于预设阈值;或者是,当查询到本地令牌桶中的令牌小于预设数量时,可以确定该客户端的访问频率大于预设阈值;其中,预设数量及预设阈值可以根据实际需要进行灵活设置,具体内容在此处不作限定。当根据本地令牌桶中的令牌确定客户端的访问频率大于预设阈值时,为了确定是否可以增加该客户端的访问频率,此时访问频率控制装置可以向频控服务器集群发送令牌申请请求。
其中,频控服务器集群可以包括一个或多个,多个频控服务器集群可以包括为多个业务服务器集群提供不同类型频控服务的频控服务器集群,每个频控服务器集群中可包括多个同一频控类型的频控服务器,一个频控服务器可以为一个业务服务器提供频控服务。
在某些实施方式中,向频控服务器集群发送令牌申请请求的步骤可以包括:判断客户端标识是否在预设的白名单中;若客户端标识在预设的白名单中,则向频控服务器集群发送令牌申请请求。
具体地,访问频率控制装置可以预先设置黑白名单,其中,黑名单中可以存储限制访问频率的客户端对应的客户端标识,即对于在黑名单中的客户端只能使用本地令牌桶中的令牌,当本地令牌桶中不存在令牌时,不可向频控服务器集群发送令牌申请请求;白名单中可以存储可增加访问频率的客户端对应的客户端标识,即对于在白名单中的客户端,当本地令牌桶中不存在令牌时,可以向频控服务器集群发送令牌申请请求。
可以理解的是,访问频率控制装置还可以预先设置无限访问名单和禁止访问名单等,其中,在无限访问名单中的客户端可以无限次数访问,不对其访问频率进行控制,在禁止访问名单中的客户端不可以访问。
当根据本地令牌桶中的令牌确定客户端的访问频率大于预设阈值时,访问频率控制装置可以判断客户端标识是否在预设的白名单中;若客户端标识在预设的白名单中,则向频控服务器集群发送令牌申请请求。若客户端标识不在预设的白名单中,则不向频控服务器集群发送令牌申请请求,拒绝为该客户端标识对应的客户端提供访问服务。
可选地,若客户端标识在预设的白名单中,则向频控服务器集群发送令牌申请请求的步骤可以包括:当客户端标识在预设的白名单中时,在预设周期内生产令牌;当生产的令牌不能满足业务访问请求所需的令牌时,向频控服务器集群发送令牌申请请求。
具体地,本地令牌桶中的令牌可以是频控服务器集群预先分配的,也可以是本地令牌桶预先生产的,不同的客户端对应的本地令牌桶中的令牌数量可以根据实际需要进行灵活设置。当客户端标识在预设的白名单中时,说明该客户端标识对应的客户端可以增加访问频率,访问频率控制装置可以每隔预设周期生产预设数量的令牌,此时访问频率控制装置在预设周期内生产令牌。当生产的令牌不能满足业务访问请求所需的令牌时,访问频率控制装置可以向频控服务器集群发送令牌申请请求。
在某些实施方式中,当根据本地令牌桶中的令牌确定客户端的访问频率大于预设阈值时,向频控服务器集群发送令牌申请请求的步骤之后,访问频率控制方法还可以包括:
当频控服务器集群查询预存的令牌桶中不存在令牌时,接收频控服务器集群基于令牌申请请求返回的令牌申请失败信息;基于令牌申请失败信息,拒绝为业务访问请求对应的业务提供访问服务。
具体地,在访问频率控制装置向频控服务器集群发送令牌申请请求后,频控服务器集群可以查询预存的令牌桶中是否存在令牌,该令牌桶为频控服务器集群预先设置的,令牌桶中可以存储有令牌,该令牌桶中令牌的代表意义以及令牌桶的工作过程与本地令牌桶的类似,在此处不再赘述。当频控服务器集群查询到令牌桶中不存在令牌时,说明当前各客户端访问频率较大,此时频控服务器集群基于令牌申请请求向访问频率控制装置返回令牌申请失败信息,访问频率控制装置接收该令牌申请失败信息。访问频率控制装置在接收到令牌申请失败信息后,可以拒绝为业务访问请求对应的业务提供访问服务。从而能够有效的解决在客户端流量突增(即访问频率突增)时,灵活地限制客户端的访问频率,从而保护访问频率控制装置(即业务服务器集群)的安全和稳定。
需要说明的是,频控服务器集群在接收到令牌申请请求后,可以从令牌申请请求中提取出业务访问请求需要访问的业务服务器标识,根据预先设置的业务服务器标识与频控服务器标识之间的映射关系,确定与业务服务器标识对应的频控服务器标识,从频控服务器集群中获取频控服务器标识对应的频控服务器。该频控服务器可以查询预存的令牌桶中的令牌,当该频控服务器查询到令牌桶中不存在令牌时,频控服务器向访问频率控制装置返回的令牌申请失败信息,当该频控服务器查询到令牌桶中不存在令牌时,频控服务器向访问频率控制装置返回令牌申请请求所需的令牌。
在步骤S104中,接收频控服务器集群基于令牌申请请求返回的令牌,并根据得到的令牌为业务访问请求对应的业务提供访问服务。
在访问频率控制装置向频控服务器集群发送令牌申请请求后,频控服务器集群可以查询预存的令牌桶中是否存在令牌,当频控服务器集群查询到令牌桶中存在令牌时,频控服务器集群基于令牌申请请求向访问频率控制装置返回令牌。访问频率控制装置接收频控服务器集群返回的令牌,并根据得到的令牌为业务访问请求对应的业务提供访问服务。访问频率控制装置预设的本地令牌桶可以有效的分担频控服务器集群的负载,使得访问频率控制装置与频控服务器集群之间有一个缓冲,降低客户端对频控服务器集群的访问次数,可以大大减少频控服务器集群的压力,能支撑更大的访问冲击量,同时当频控服务器集群出问题时,访问频率控制装置可以通过本地令牌桶控制客户端的访问频率,最大可能的减少访问频率控制装置的容错性。
需要说明的是,该访问频率控制装置可以是业务服务器集群,业务服务器集群中可以包括接入服务器和频控代理服务器等,频控服务器集群可以包括频控逻辑集群和存储服务器集群(也称为存储集群)等,其中,业务服务器集群中的接入服务器和频控代理服务器等的数量,以及频控服务器集群中频控逻辑集群中和存储服务器集群的数量可以根据实际需要进行灵活设置。例如,如图3所示,客户端可以向业务服务器集群发送业务访问请求,业务服务器集群将业务访问请求负载均衡至业务服务器集群中的接入服务器。在接收到业务访问请求后,接入服务器向业务服务器集群中的频控代理服务器发送频控请求。在接收到频控请求后,频控代理服务器查询本地令牌桶。当根据本地令牌桶中的令牌确定客户端的访问频率大于预设阈值时,频控代理服务器向频控服务器集群中的频控逻辑集群发送令牌申请请求。在接收到令牌申请请求后,频控逻辑集群向频控服务器集群中的存储服务器集群发送令牌更新请求。在接收到令牌更新请求后,存储服务器集群查询预存的令牌桶。当存储服务器集群查询的令牌桶中存在令牌时,从令牌桶中扣减令牌申请请求所需的令牌,并向频控逻辑集群返回更新结果。在接收到更新结果后,频控逻辑集群向频控代理服务器返回令牌申请请求所需的令牌。频控代理服务器将接收到的令牌存入本地令牌桶,并从本地令牌桶中扣减业务访问请求所需的令牌,并向接入服务器返回扣减令牌结果,以使得接入服务器为业务访问请求对应的业务提供访问服务,以处理业务访问请求对应的业务。
在某些实施方式中,根据得到的令牌为业务访问请求对应的业务提供访问服务的步骤可以包括:
将得到的令牌存储至本地令牌桶;从本地令牌桶中获取业务访问请求所需的令牌;根据获取到的业务访问请求所需的令牌,为业务访问请求对应的业务提供访问服务。
具体地,访问频率控制装置在接收到频控服务器集群基于令牌申请请求返回的令牌后,为了便于对客户端的访问频率进行统计,可以将得到的令牌存储至本地令牌桶;然后从本地令牌桶中获取业务访问请求所需的令牌,根据本地令牌桶中消耗的令牌来统计客户端的访问频率,以及可以根据获取到的业务访问请求所需的令牌,为业务访问请求对应的业务提供访问服务,即处理业务访问请求对应的业务。
可选地,从本地令牌桶中获取业务访问请求所需的令牌的步骤可以包括:判断当前时刻是否在当前令牌周期内;若当前时刻不在当前令牌周期内,则从本地令牌桶中获取业务访问请求所需的令牌,更新本地令牌桶中的令牌数量。
可以为本地令牌桶中的令牌设置有效期,一个令牌的有效期可以是使用一次或多次,或者是在预设时间段内使用等。频率控制装置从本地令牌桶中获取业务访问请求所需的令牌时,可以判断当前时刻是否需要更新本地令牌桶中的令牌数量,即判断当前时刻是否在当前令牌周期内,如果当前时刻在当前令牌周期内,则不需要更新本地令牌桶中的令牌数量;如果当前时刻已经进入下一个令牌周期内,则从本地令牌桶中扣减业务访问请求所需的令牌,更新本地令牌桶中的令牌数量。当令牌数量更新成功时,可以为客户端提供访问服务;当令牌数量更新失败时,可以重试预设次数,若成功,则为客户端提供访问服务,若失败,则不为客户端提供访问服务,并返回失败信息给客户端。
由上可知,本发明实施例在接收到客户端发送的携带客户端标识的业务访问请求时,可以确定与客户端标识对应的令牌桶标识,并查询与令牌桶标识对应的本地令牌桶;当根据本地令牌桶中的令牌确定客户端的访问频率大于预设阈值时,向频控服务器集群发送令牌申请请求;然后接收频控服务器集群基于令牌申请请求返回的令牌,并根据得到的令牌为业务访问请求对应的业务提供访问服务。该方案可以根据客户端标识维护每个客户端对应的本地令牌桶中的令牌,以及通过频控服务器集群维护预存的令牌桶中的令牌,通过令牌桶中的令牌对客户端的访问频率进行有效控制,提高了对访问频率进行控制的精确性。
根据上述实施例所描述的方法,以下将举例作进一步详细说明。
本实施例以访问频率控制装置为业务服务器集群(也称为业务集群)为例,该业务服务器集群可以包括一个或多个,其中,多个业务服务器集群可以包括为多个为客户端提供不同类型业务服务的业务服务器集群,每个业务服务器集群中可包括多个同一业务类型的业务服务器。业务服务器集群中可以包括接入服务器和频控代理服务器等,该接入服务器可以包括一个或多个,该频控代理服务器可以包括一个或多个。频控服务器集群可以包括一个或多个,多个频控服务器集群可以包括为多个业务服务器集群提供不同类型频控服务的频控服务器集群,每个频控服务器集群中可包括多个同一频控类型的频控服务器,频控服务器集群可以包括频控逻辑集群和存储服务器集群(也称为存储集群)等,该频控逻辑集群和存储服务器集群均可以包括一个或多个。
为了描述方便,在本发明实施例中,将以一个客户端、业务服务器集群中的其中一个接入服务器和频控代理服务器、以及频控服务器集群中的一个频控逻辑集群和存储服务器集群为例,可以理解的是,本实施例只是为了便于描述所举的例子,不应理解为是对客户端、业务服务器集群及其包括的接入服务器和频控代理服务器、以及频控服务器集群及其包括的频控逻辑集群和存储服务器集群等数量的限定,但不管数量为多少个,访问频率控制的过程都是类似的,都可以按照该示例进行理解。
请参阅图4,图4为本发明实施例提供的访问频率控制方法的流程示意图。该方法流程可以包括:
201、客户端向业务服务器集群发送业务访问请求,业务服务器集群将业务访问请求负载均衡至业务服务器集群中的接入服务器。
当需要执行某个业务时,客户端可以向业务服务器集群发送业务访问请求,该业务访问请求中可以携带业务标识和客户端标识等信息。其中,业务标识可以用于指示该业务访问请求对应的业务类型,该业务访问请求对应的业务类型可以根据实际需要进行灵活设置,例如,可以是邮件业务访问请求或微博业务访问请求等,具体内容在此处不作限定。该业务标识可以是业务名称或业务编号等,可以由数字、字母和/或文字等组成,具体内容在此处不作限定。该客户端标识用于指示客户端,该客户端标识可以是客户端名称或客户端编号等,可以由数字、字母和/或文字等组成,具体内容在此处不作限定。业务服务器集群在接收到业务访问请求后,可以将业务访问请求负载均衡至业务服务器集群中的接入服务器上。
202、在接收到业务访问请求后,接入服务器向业务服务器集群中的频控代理服务器发送频控请求。
接入服务器在接收到业务访问请求后,可以向业务服务器集群中的频控代理服务器发送频控请求,该频控请求可以携带有业务标识和客户端标识等信息,以使得频控代理服务器根据频控请求对客户端的访问频率进行控制。
203、在接收到频控请求后,频控代理服务器查询本地令牌桶。
频控代理服务器在接收到频控请求后,可以从频控请求中提取出客户端标识,并根据预先建立的客户端标识与令牌桶标识之间的映射关系,确定与客户端标识对应的令牌桶标识。然后获取与令牌桶标识对应的本地令牌桶,查询该本地令牌桶,该本地令牌桶可以是频控代理服务器本地预置的令牌桶。
其中,若本地令牌桶中存在令牌,则可以为客户端提供访问服务,若本地令牌桶中不存在令牌,则不为客户端提供访问服务。本地令牌桶中的每一个令牌可以代表为客户端提供访问服务的次数,或者是,本地令牌桶中的每一个令牌可以代表为客户端提供访问服务的时间段,或者是,本地令牌桶中的每一个令牌可以代表每秒内为客户端提供访问服务的次数(即客户端的访问频率)等。可以理解的是,令牌可以代表的权限可以根据实际需要进行灵活设置,具体内容在此不作限定。
频控代理服务器在查询本地令牌桶的过程中,当查询到本地令牌桶中存在令牌时,可以从本地令牌桶中获取业务访问请求所需的令牌。在获取到令牌后,频控代理服务器从本地令牌桶中扣减业务访问请求所需的令牌,并将扣减的令牌返回给接入服务器,接入服务器可以根据得到的令牌为业务访问请求对应的业务提供访问服务。
需要说明的是,当令牌桶中的每一个令牌代表每周期内为客户端提供访问服务的次数时,例如,每秒访问1000次,频控代理服务器在查询到本地令牌桶中存在令牌时,如果当前时刻在当前令牌周期内,则可以不更新本地令牌桶中的令牌(即不扣减令牌);如果当前时刻已经进入下一个令牌周期,则从本地令牌桶中扣减业务访问请求所需的令牌,更新本地令牌桶中的令牌。例如,假设允许客户端每秒访问1000次,当前令牌周期为第50秒,如果当前时刻在第50秒内,则不扣减令牌;如果当前时刻进入第51秒,则扣减令牌。当令牌更新成功时,可以为客户端提供访问服务;当令牌更新失败时,可以重试预设次数,若成功,则为客户端提供访问服务,若失败,则不为客户端提供访问服务,并返回失败信息给客户端。对于未使用的令牌,频控代理服务器可以直接丢弃,也可以退还至本地令牌桶。
需要说明的是,频控代理服务器不仅可以消费令牌,还可以生产令牌,例如,如图5所示,频控代理服务器作为生产者,可以是周期性的以预设速率生产令牌,并将生产的令牌存储至本地令牌桶(即图5中的令牌桶)中,该本地令牌桶可以是频控代理服务器的共享内存,该共享内存可以是存储本地令牌桶的数据结构;或者是,频控代理服务器周期性的向频控服务器集群申请令牌,并接申请到的令牌写入到共享内存中。其中,频控使用者可以是使用访问频率控制方法的设备,例如消费令牌的接入服务器等,频控使用者可以通过多进程或多线程等模式消费令牌。例如,当需要对客户端的访问频率进行控制时,频控使用者可以通过进程1、进程2、进程3及进程4等并行或串行地向共享内存请求频控,从而可以从共享内存中获取所需的令牌。
具体地,消费令牌的过程可以如下:当频控使用者需要消费令牌时,会向共享内存申请令牌数,如果共享内存中的令牌数为0,则直接返回频控使用者频控超限,如果共享内存中的令牌数不为0,则频控使用者可以申请到令牌,并执行后续的操作。如果令牌数不为0时,则共享内存还需要去更新令牌,如果令牌更新成功,则返回客户端更新成功信息;如果令牌更新失败,则会重试一定的次数,若成功,则返回客户端更新成功信息,若失败,则返回客户端更新失败信息。如果请求频控所需要的令牌不存在,则频控使用者会通知频控代理服务器生产令牌,由频控代理服务器在一定周期内去生产令牌,频控代理服务器会在令牌周期内维护令牌的更新。
204、当根据本地令牌桶中的令牌确定客户端的访问频率大于预设阈值时,频控代理服务器向频控服务器集群中的频控逻辑集群发送令牌申请请求。
频控代理服务器在查询本地令牌桶的过程中,当根据本地令牌桶中的令牌确定该客户端的访问频率大于预设阈值时,说明该客户端的访问频率较大,例如,当查询到本地令牌桶中不存在令牌时,可以确定该客户端的访问频率大于预设阈值;或者是,当查询到本地令牌桶中的令牌小于预设数量时,可以确定该客户端的访问频率大于预设阈值;其中,预设数量及预设阈值可以根据实际需要进行灵活设置,具体内容在此处不作限定。当根据本地令牌桶中的令牌确定客户端的访问频率大于预设阈值时,频控代理服务器向频控服务器集群中的频控逻辑集群发送令牌申请请求,该令牌申请请求中可以携带所需的令牌数量、业务标识和客户端标识等信息。
需要说明的是,频控代理服务器还可以预先设置黑白名单,其中,对于在黑名单中的客户端只能使用本地令牌桶中的令牌,当本地令牌桶中不存在令牌时,不可向频控服务器集群发送令牌申请请求;对于在白名单中的客户端,当本地令牌桶中不存在令牌时,可以向频控服务器集群发送令牌申请请求。
当根据本地令牌桶中的令牌确定客户端的访问频率大于预设阈值时,频控代理服务器可以判断客户端标识是否在预设的白名单中;若客户端标识在预设的白名单中,则向频控服务器集群中的频控逻辑集群发送令牌申请请求。若客户端标识不在预设的白名单中,则拒绝为该客户端标识对应的客户端提供访问服务。
205、在接收到令牌申请请求后,频控逻辑集群向频控服务器集群中的存储服务器集群发送令牌更新请求。
其中,存储服务器集群主要负责存储客户端在时间周期内的访问频率情况,存储服务器集群可采用键值(Key-Value)存储(即KV存储)***来存储客户端访问频率。频控逻辑集群可以负责令牌的发放、频控次数的存储、管理频控策略、黑白名单控制、针对客户端的个性化控制(例如某些客户端可以减少访问频率,某些客户端可以增加访问频率,可以禁止某些用户的访问等)、以及管理与存储服务器集群的交互。在接收到令牌申请请求后,频控逻辑集群可以向频控服务器集群中的存储服务器集群发送令牌更新请求,该令牌更新请求中可以携带令牌数量、业务标识和客户端标识等信息,以便从存储服务器集群中获取令牌。
例如,如图6所示,对于客户端A在时间周期1的访问,频控逻辑集群可以在时间周期1 内根据令牌标识1向存储服务器集群(及存储服务器集群)申请令牌1,即向存储服务器集群发送令牌1更新请求,此时存储服务器集群可以根据令牌标识1存储客户端A在时间周期1 内的访问频率情况,该令牌标识1可以标识客户端A在时间周期1的访问次数。类似地,在时间周期2的访问、在时间周期3的访问、在时间周期4的访问、及在时间周期5的访问等,均可以与在时间周期1的访问类似,在此不再赘述。
206、在接收到令牌更新请求后,存储服务器集群查询预存的令牌桶。
存储服务器集群可以预先存储有令牌桶,该令牌桶主要是结合频控代理服务器的本地令牌桶对客户端的访问频率进行控制,存储服务器集群可以每间隔预设时间周期生产令牌,并将令牌存储至令牌桶中,若令牌桶中存在令牌,则可以为客户端提供访问服务,若令牌桶中不存在令牌,则不为客户端提供访问服务。令牌桶中的每一个令牌可以代表为客户端提供访问服务的次数,或者是,令牌桶中的每一个令牌可以代表为客户端提供访问服务的时间段,或者是,令牌桶中的每一个令牌可以代表每秒内为客户端提供访问服务的次数(即客户端的访问频率)等。可以理解的是,令牌可以代表的权限可以根据实际需要进行灵活设置,具体内容在此不作限定。
存储服务器集群在接收到令牌更新请求后,可以查询预存的令牌桶,以判断令牌桶中是否存在令牌。
207、当存储服务器集群查询的令牌桶中存在令牌时,从令牌桶中扣减令牌申请请求所需的令牌,并向频控逻辑集群返回更新结果。
存储服务器集群可以查询预存的令牌桶中是否存在令牌,当存储服务器集群查询到令牌桶中存在令牌时,存储服务器集群可以从令牌桶中扣减令牌申请请求所需的令牌,并向频控逻辑集群返回更新结果,该更新结果中可以携带令牌更新请求所需的令牌,即基于令牌更新请求向频控逻辑集群返回令牌。频控逻辑集群接收到存储服务器集群返回的令牌后,可以将该令牌发送给频控代理服务器。
当存储服务器集群查询预存的令牌桶中不存在令牌时,可以向频控逻辑集群返回令牌申请失败信息,频控逻辑集群将令牌申请失败信息通过频控代理服务器发送给接入服务器,接入服务器基于接收到的令牌申请失败信息,拒绝为业务访问请求对应的业务提供访问服务。
例如,对于客户端A的访问频率控制,假设控制策略为允许客户端A在1秒钟内访问1000次,当客户端A在1秒钟内存在1001次访问时,即在unix时间戳1510112115内有1001次访问时,则在存储服务器集群中,该客户端A的存储结构可以为key:1510112115_1,value:1001;其中,当接收到客户端A发送的第1001业务访问请求时,会返回访问频次超限,同时客户端A的访问被拒绝,达到精准频控的目的。
208、在接收到更新结果后,频控逻辑集群向频控代理服务器返回令牌申请请求所需的令牌。
频控逻辑集群在接收到更新结果后,可以从更新结果中提取出令牌,并向频控代理服务器返回令牌申请请求所需的令牌。使得频控代理服务器预设的本地令牌桶可以有效的分担频控服务器集群的负载,降低客户端对频控服务器集群的访问次数,可以大大减少频控服务器集群的压力,能支撑更大的访问冲击量,同时当频控服务器集群出问题时,业务服务器集群可以通过本地令牌桶控制客户端的访问频率,最大可能的减少业务服务器集群的容错性。
209、频控代理服务器将接收到的令牌存入本地令牌桶,并从本地令牌桶中扣减业务访问请求所需的令牌。
频控代理服务器在接收到频控逻辑集群返回的令牌申请请求所需的令牌后,可以将得到的令牌存储至本地令牌桶;然后从本地令牌桶中扣减业务访问请求所需的令牌,根据本地令牌桶中消耗的令牌来统计客户端的访问频率。
本地令牌桶中的令牌可以设置有效期,一个令牌的有效期可以是使用一次或多次,或者是在预设时间段内使用等。频控代理服务器从本地令牌桶中获取业务访问请求所需的令牌时,如果当前时刻在当前令牌周期内,则可以不扣减本地令牌桶中的令牌;如果当前时刻已经进入下一个令牌周期内,则可以从本地令牌桶中扣减业务访问请求所需的令牌。
210、频控代理服务器生成频控结果,并向接入服务器返回频控结果。
频控代理服务器可以根据扣减的令牌生成频控结果,该频控结果中可以携带允许客户端访问的信息和令牌等,向接入服务器返回频控结果。
211、在接收到频控结果后,接入服务器为业务访问请求对应的业务提供访问服务,以处理业务访问请求对应的业务。
接入服务器在接收到频控结果后,可以根据频控结果中携带的信息确定可为客户端提供访问服务时,可以从频控结果提取出业务访问请求所需的令牌,通过令牌为业务访问请求对应的业务提供访问服务,以处理业务访问请求对应的业务。
212、接入服务器向客户端返回业务处理结果。
接入服务器在处理业务访问请求对应的业务后,可以生成业务处理结果,并向客户端返回业务处理结果。
本发明实施例能够在业务服务器集群被高频访问时,利用令牌桶对不同客户端的访问频率进行有效控制,从而可以保护业务服务器集群的安全性,以及提高了对访问频率进行控制的精确性。并且,利用频控代理服务器预设的本地令牌桶可以有效的分担频控服务器集群的负载,使得业务服务器集群与频控服务器集群之间有一个缓冲,降低客户端对频控服务器集群的访问次数,可以大大减少频控服务器集群的压力。
为便于更好的实施本发明实施例提供的访问频率控制方法,本发明实施例还提供一种基于上述访问频率控制方法的装置。其中名词的含义与上述访问频率控制方法中相同,具体实现细节可以参考方法实施例中的说明。
请参阅图7,图7为本发明实施例提供的访问频率控制装置的结构示意图,其中该访问频率控制装置可以包括第一接收单元301、确定单元302、发送单元303及控制单元304等。
其中,第一接收单元301,用于接收客户端发送的业务访问请求,业务访问请求中携带客户端标识。
其中,客户端可以是集成在手机或电脑等终端上,当终端上需要执行某个业务时,可以通过客户端向访问频率控制装置发送业务访问请求,第一接收单元301接收该业务访问请求,该业务访问请求中可以携带业务标识和客户端标识等信息。该客户端标识可以是客户端名称或客户端编号等,可以由数字、字母和/或文字等组成,具体内容在此处不作限定。该业务访问请求的类型可以根据实际需要进行灵活设置,例如,可以是邮件业务访问请求或微博业务访问请求等,具体内容在此处不作限定。
确定单元302,用于确定与客户端标识对应的令牌桶标识,并查询与令牌桶标识对应的本地令牌桶。
为了有效对每个客户端的访问频率进行控制,访问频率控制装置可以预先通过标识维护客户端与本地令牌桶之间的映射关系,即建立客户端标识与令牌桶标识之间的映射关系,使得每个客户端存在与其对应的本地令牌桶。该令牌桶标识可以是令牌桶名称或令牌桶编号等,可以由数字、字母和/或文字等组成,具体内容在此处不作限定。
其中,本地令牌桶中可以存储有令牌,本地令牌桶主要用于对客户端的访问频率进行控制,例如,可以通过本地令牌桶中是否存在令牌来指示是否可以允许客户端访问,即若本地令牌桶中存在令牌,则可以为客户端提供访问服务,若本地令牌桶中不存在令牌,则不为客户端提供访问服务。本地令牌桶中的每一个令牌可以代表为客户端提供访问服务的次数,例如,一个令牌可以为客户端提供一次或多次的访问服务;或者是,本地令牌桶中的每一个令牌可以代表为客户端提供访问服务的时间段,例如一个令牌可以为客户端提供1秒或3秒内的访问服务;或者是,本地令牌桶中的每一个令牌可以代表每秒内为客户端提供访问服务的次数,即本地令牌桶中的每一个令牌可以代表每秒内允许客户端访问的次数(即客户端的访问频率)等。可以理解的是,令牌可以代表的权限可以根据实际需要进行灵活设置,具体内容在此不作限定。
本地令牌桶的工作过程可以包括:产生令牌、消耗令牌和判断是否为客户端提供访问服务等。其中,产生令牌可以是周期性的以预设速率向本地令牌桶中增加令牌,使得本地令牌桶中的令牌不断增多,如果本地令牌桶中令牌数超过预设数量阈值,则可以丢弃多余的令牌。消耗令牌可以是在为客户端提供访问服务时会消耗本地令牌桶中的令牌,以便统计客户端访问频率,该访问频率可以是每秒内访问的次数,或每分钟内访问的次数等。判断是否为客户端提供访问服务可以是,当本地令牌桶中的令牌数量可以满足业务访问请求对应的业务对令牌的需求时,可以为客户端提供访问服务,否则不为客户端提供访问服务。
在接收到客户端发送的携带客户端标识的业务访问请求后,确定单元302可以从业务访问请求中提取出客户端标识,并根据客户端标识与令牌桶标识之间的映射关系,确定与客户端标识对应的令牌桶标识。然后获取与令牌桶标识对应的本地令牌桶,查询该本地令牌桶,该本地令牌桶可以是访问频率控制装置本地预置的令牌桶。即当根据本地令牌桶中的令牌判断客户端的访问频率,例如,当本地令牌桶中存在令牌时,可以确定客户端的访问频率小于或等于预设阈值;当本地令牌桶中不存在令牌时,可以确定客户端的访问频率大于预设阈值。
在某些实施方式中,如图10所示,访问频率控制装置还可以包括获取单元305和提供单元306等,具体可以如下:
获取单元305,用于当本地令牌桶中存在令牌时,从本地令牌桶中获取业务访问请求所需的令牌;
提供单元306,用于根据获取到的令牌为业务访问请求对应的业务提供访问服务。
在查询本地令牌桶的过程中,当查询到本地令牌桶中存在令牌时,说明该客户端的访问频率小于或等于预设阈值,此时获取单元305可以从本地令牌桶中获取业务访问请求所需的令牌。其中,该预设阈值可以根据实际需要进行灵活设置,业务访问请求所需的令牌的数量可以是一个或多个,当业务访问请求所需的令牌的数量为多个时,可以当查询到本地令牌桶中存在业务访问请求所需的令牌时,获取单元305从本地令牌桶中获取业务访问请求所需的令牌。在获取到令牌后,提供单元306可以根据获取到的令牌为业务访问请求对应的业务提供访问服务。
需要说明的是,当令牌桶中的每一个令牌代表每周期内为客户端提供访问服务的次数时,获取单元305在查询到本地令牌桶中存在令牌时,可以判断当前时刻是否需要更新本地令牌桶中的令牌,例如,如果当前时刻仍在当前令牌周期内,则不会更新本地令牌桶中的令牌;如果当前时刻已经进入下一个新的令牌周期内,则从本地令牌桶中扣减业务访问请求所需的令牌,更新本地令牌桶中的令牌。当令牌更新成功时,提供单元306可以为客户端提供访问服务;当令牌更新失败时,可以重试预设次数,若成功,则提供单元306为客户端提供访问服务,若失败,则不为客户端提供访问服务,并返回失败信息给客户端。
发送单元303,用于当根据本地令牌桶中的令牌确定客户端的访问频率大于预设阈值时,向频控服务器集群发送令牌申请请求。
在查询本地令牌桶的过程中,当根据本地令牌桶中的令牌确定该客户端的访问频率大于预设阈值时,说明该客户端的访问频率较大,例如,当查询到本地令牌桶中不存在令牌时,可以确定该客户端的访问频率大于预设阈值;或者是,当查询到本地令牌桶中的令牌小于预设数量时,可以确定该客户端的访问频率大于预设阈值;其中,预设数量及预设阈值可以根据实际需要进行灵活设置,具体内容在此处不作限定。当根据本地令牌桶中的令牌确定客户端的访问频率大于预设阈值时,为了确定是否可以增加该客户端的访问频率,此时发送单元303可以向频控服务器集群发送令牌申请请求。
其中,频控服务器集群可以包括一个或多个,多个频控服务器集群可以包括为多个业务服务器集群提供不同类型频控服务的频控服务器集群,每个频控服务器集群中可包括多个同一频控类型的频控服务器,一个频控服务器可以为一个业务服务器提供频控服务。
在某些实施方式中,如图9所示,发送单元303可以包括判断子单元3031和发送子单元 3032等,具体可以如下:
判断子单元3031,用于判断客户端标识是否在预设的白名单中;
发送子单元3032,用于若客户端标识在预设的白名单中,则向频控服务器集群发送令牌申请请求。
具体地,访问频率控制装置可以预先设置黑白名单,其中,黑名单中可以存储限制访问频率的客户端对应的客户端标识,即对于在黑名单中的客户端只能使用本地令牌桶中的令牌,当本地令牌桶中不存在令牌时,不可向频控服务器集群发送令牌申请请求;白名单中可以存储可增加访问频率的客户端对应的客户端标识,即对于在白名单中的客户端,当本地令牌桶中不存在令牌时,可以向频控服务器集群发送令牌申请请求。
可以理解的是,访问频率控制装置还可以预先设置无限访问名单和禁止访问名单等,其中,在无限访问名单中的客户端可以无限次数访问,不对其访问频率进行控制,在禁止访问名单中的客户端不可以访问。
当根据本地令牌桶中的令牌确定客户端的访问频率大于预设阈值时,判断子单元3031 可以判断客户端标识是否在预设的白名单中;若客户端标识在预设的白名单中,则发送子单元3032向频控服务器集群发送令牌申请请求。若客户端标识不在预设的白名单中,则不向频控服务器集群发送令牌申请请求,拒绝为该客户端标识对应的客户端提供访问服务。
可选地,发送子单元3032具体可以用于:当客户端标识在预设的白名单中时,在预设周期内生产令牌;当生产的令牌不能满足业务访问请求所需的令牌时,向频控服务器集群发送令牌申请请求。
具体地,本地令牌桶中的令牌可以是频控服务器集群预先分配的,也可以是本地令牌桶预先生产的,不同的客户端对应的本地令牌桶中的令牌数量可以根据实际需要进行灵活设置。当客户端标识在预设的白名单中时,说明该客户端标识对应的客户端可以增加访问频率,可以每隔预设周期生产预设数量的令牌,此时在预设周期内生产令牌。当生产的令牌不能满足业务访问请求所需的令牌时,发送子单元3032可以向频控服务器集群发送令牌申请请求。
在某些实施方式中,如图11所示,访问频率控制装置还可以包括第二接收单元307和拒绝单元308等,具体可以如下:
第二接收单元307,用于当频控服务器集群查询预存的令牌桶中不存在令牌时,接收频控服务器集群基于令牌申请请求返回的令牌申请失败信息;
拒绝单元308,用于基于令牌申请失败信息,拒绝为业务访问请求对应的业务提供访问服务。
具体地,在向频控服务器集群发送令牌申请请求后,频控服务器集群可以查询预存的令牌桶中是否存在令牌,该令牌桶为频控服务器集群预先设置的,令牌桶中可以存储有令牌,该令牌桶中令牌的代表意义以及令牌桶的工作过程与本地令牌桶的类似,在此处不再赘述。当频控服务器集群查询到令牌桶中不存在令牌时,说明当前各客户端访问频率较大,此时频控服务器集群基于令牌申请请求向访问频率控制装置返回令牌申请失败信息,第二接收单元307接收该令牌申请失败信息。在接收到令牌申请失败信息后,拒绝单元308可以拒绝为业务访问请求对应的业务提供访问服务。从而能够有效的解决在客户端流量突增(即访问频率突增)时,灵活地限制客户端的访问频率,从而保护访问频率控制装置的安全和稳定。
需要说明的是,频控服务器集群在接收到令牌申请请求后,可以从令牌申请请求中提取出业务访问请求需要访问的业务服务器标识,根据预先设置的业务服务器标识与频控服务器标识之间的映射关系,确定与业务服务器标识对应的频控服务器标识,从频控服务器集群中获取频控服务器标识对应的频控服务器。该频控服务器可以查询预存的令牌桶中的令牌,当该频控服务器查询到令牌桶中不存在令牌时,频控服务器向访问频率控制装置返回的令牌申请失败信息,当该频控服务器查询到令牌桶中不存在令牌时,频控服务器向访问频率控制装置返回令牌申请请求所需的令牌。
控制单元304,用于接收频控服务器集群基于令牌申请请求返回的令牌,并根据得到的令牌为业务访问请求对应的业务提供访问服务。
在向频控服务器集群发送令牌申请请求后,频控服务器集群可以查询预存的令牌桶中是否存在令牌,当频控服务器集群查询到令牌桶中存在令牌时,频控服务器集群基于令牌申请请求向控制单元304返回令牌。控制单元304接收频控服务器集群返回的令牌,并根据得到的令牌为业务访问请求对应的业务提供访问服务。访问频率控制装置预设的本地令牌桶可以有效的分担频控服务器集群的负载,使得访问频率控制装置与频控服务器集群之间有一个缓冲,降低客户端对频控服务器集群的访问次数,可以大大减少频控服务器集群的压力,能支撑更大的访问冲击量,同时当频控服务器集群出问题时,访问频率控制装置可以通过本地令牌桶控制客户端的访问频率,最大可能的减少访问频率控制装置的容错性。
在某些实施方式中,如图8所示,控制单元304可以包括存储子单元3041、获取子单元 3042和提供子单元3043等,具体可以如下:
存储子单元3041,用于将得到的令牌存储至本地令牌桶;
获取子单元3042,用于从本地令牌桶中获取业务访问请求所需的令牌;
提供子单元3043,用于根据获取到的业务访问请求所需的令牌,为业务访问请求对应的业务提供访问服务。
具体地,在接收到频控服务器集群基于令牌申请请求返回的令牌后,为了便于对客户端的访问频率进行统计,存储子单元3041可以将得到的令牌存储至本地令牌桶;然后获取子单元3042从本地令牌桶中获取业务访问请求所需的令牌,根据本地令牌桶中消耗的令牌来统计客户端的访问频率,以及提供子单元3043可以根据获取到的业务访问请求所需的令牌,为业务访问请求对应的业务提供访问服务,即处理业务访问请求对应的业务。
可选地,获取子单元3042具体可以用于:判断当前时刻是否在当前令牌周期内;若当前时刻不在当前令牌周期内,则从本地令牌桶中获取业务访问请求所需的令牌,更新本地令牌桶中的令牌数量。
可以为本地令牌桶中的令牌设置有效期,一个令牌的有效期可以是使用一次或多次,或者是在预设时间段内使用等。获取子单元3042从本地令牌桶中获取业务访问请求所需的令牌时,可以判断当前时刻是否需要更新本地令牌桶中的令牌数量,即判断当前时刻是否在当前令牌周期内,如果当前时刻在当前令牌周期内,则不需要更新本地令牌桶中的令牌数量;如果当前时刻已经进入下一个令牌周期内,则从本地令牌桶中扣减业务访问请求所需的令牌,更新本地令牌桶中的令牌数量。当令牌数量更新成功时,可以为客户端提供访问服务;当令牌数量更新失败时,可以重试预设次数,若成功,则为客户端提供访问服务,若失败,则不为客户端提供访问服务,并返回失败信息给客户端。
由上可知,本发明实施例在第一接收单元301接收到客户端发送的携带客户端标识的业务访问请求时,确定单元302可以确定与客户端标识对应的令牌桶标识,并查询与令牌桶标识对应的本地令牌桶;当根据本地令牌桶中的令牌确定客户端的访问频率大于预设阈值时,发送单元303向频控服务器集群发送令牌申请请求;然后控制单元304接收频控服务器集群基于令牌申请请求返回的令牌,并根据得到的令牌为业务访问请求对应的业务提供访问服务。该方案可以根据客户端标识维护每个客户端对应的本地令牌桶中的令牌,以及通过频控服务器集群维护预存的令牌桶中的令牌,通过令牌桶中的令牌对客户端的访问频率进行有效控制,提高了对访问频率进行控制的精确性。
本发明实施例还提供一种服务器,该服务器可以是业务服务器集群中的任一业务服务器,如图12所示,其示出了本发明实施例所涉及的服务器的结构示意图,具体来讲:
该服务器可以包括一个或者一个以上处理核心的处理器401、一个或一个以上计算机可读存储介质的存储器402、电源403和输入单元404等部件。本领域技术人员可以理解,图12中示出的服务器结构并不构成对服务器的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器401是该服务器的控制中心,利用各种接口和线路连接整个服务器的各个部分,通过运行或执行存储在存储器402内的软件程序和/或模块,以及调用存储在存储器402内的数据,执行服务器的各种功能和处理数据,从而对服务器进行整体监控。可选的,处理器401可包括一个或多个处理核心;优选的,处理器401可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作***、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器401中。
存储器402可用于存储软件程序以及模块,处理器401通过运行存储在存储器402的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器402可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据服务器的使用所创建的数据等。此外,存储器402可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器402 还可以包括存储器控制器,以提供处理器401对存储器402的访问。
服务器还包括给各个部件供电的电源403,优选的,电源403可以通过电源管理***与处理器401逻辑相连,从而通过电源管理***实现管理充电、放电、以及功耗管理等功能。电源403还可以包括一个或一个以上的直流或交流电源、再充电***、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该服务器还可包括输入单元404,该输入单元404可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
尽管未示出,服务器还可以包括显示单元等,在此不再赘述。具体在本实施例中,服务器中的处理器401会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器402中,并由处理器401来运行存储在存储器402中的应用程序,从而实现各种功能,如下:
接收客户端发送的业务访问请求,业务访问请求中携带客户端标识;确定与客户端标识对应的令牌桶标识,并查询与令牌桶标识对应的本地令牌桶;当根据本地令牌桶中的令牌确定客户端的访问频率大于预设阈值时,向频控服务器集群发送令牌申请请求;接收频控服务器集群基于令牌申请请求返回的令牌,并根据得到的令牌为业务访问请求对应的业务提供访问服务。
由上可知,本发明实施例在接收到客户端发送的携带客户端标识的业务访问请求时,可以确定与客户端标识对应的令牌桶标识,并查询与令牌桶标识对应的本地令牌桶;当根据本地令牌桶中的令牌确定客户端的访问频率大于预设阈值时,向频控服务器集群发送令牌申请请求;然后接收频控服务器集群基于令牌申请请求返回的令牌,并根据得到的令牌为业务访问请求对应的业务提供访问服务。该方案可以根据客户端标识维护每个客户端对应的本地令牌桶中的令牌,以及通过频控服务器集群维护预存的令牌桶中的令牌,通过令牌桶中的令牌对客户端的访问频率进行有效控制,提高了对访问频率进行控制的精确性。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见上文针对访问频率控制方法的详细描述,此处不再赘述。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本发明实施例提供一种存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本发明实施例所提供的任一种访问频率控制方法中的步骤。例如,该指令可以执行如下步骤:
接收客户端发送的业务访问请求,业务访问请求中携带客户端标识;确定与客户端标识对应的令牌桶标识,并查询与令牌桶标识对应的本地令牌桶;当根据本地令牌桶中的令牌确定客户端的访问频率大于预设阈值时,向频控服务器集群发送令牌申请请求;接收频控服务器集群基于令牌申请请求返回的令牌,并根据得到的令牌为业务访问请求对应的业务提供访问服务。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,该存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该存储介质中所存储的指令,可以执行本发明实施例所提供的任一种访问频率控制方法中的步骤,因此,可以实现本发明实施例所提供的任一种访问频率控制方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
以上对本发明实施例所提供的一种访问频率控制方法、装置及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (13)

1.一种访问频率控制方法,其特征在于,包括:
接收客户端发送的业务访问请求,所述业务访问请求中携带客户端标识;
确定与所述客户端标识对应的令牌桶标识,并查询与所述令牌桶标识对应的本地令牌桶;
当根据所述本地令牌桶中的令牌确定所述客户端的访问频率大于预设阈值时,判断所述客户端标识是否在预设的白名单中;
若所述客户端标识在预设的白名单中,则向频控服务器集群发送令牌申请请求;
接收所述频控服务器集群基于所述令牌申请请求返回令牌桶中的令牌,并根据得到的令牌为所述业务访问请求对应的业务提供访问服务。
2.根据权利要求1所述的访问频率控制方法,其特征在于,所述根据得到的令牌为所述业务访问请求对应的业务提供访问服务的步骤包括:
将得到的令牌存储至所述本地令牌桶;
从所述本地令牌桶中获取所述业务访问请求所需的令牌;
根据获取到的所述业务访问请求所需的令牌,为所述业务访问请求对应的业务提供访问服务。
3.根据权利要求2所述的访问频率控制方法,其特征在于,所述从所述本地令牌桶中获取所述业务访问请求所需的令牌的步骤包括:
判断当前时刻是否在当前令牌周期内;
若当前时刻不在当前令牌周期内,则从所述本地令牌桶中获取所述业务访问请求所需的令牌,更新所述本地令牌桶中的令牌数量。
4.根据权利要求1所述的访问频率控制方法,其特征在于,所述若所述客户端标识在预设的白名单中,则向频控服务器集群发送令牌申请请求的步骤包括:
当所述客户端标识在预设的白名单中时,在预设周期内生产令牌;
当生产的令牌不能满足所述业务访问请求所需的令牌时,向频控服务器集群发送令牌申请请求。
5.根据权利要求1至4任一项所述的访问频率控制方法,其特征在于,所述确定与所述客户端标识对应的令牌桶标识,并查询与所述令牌桶标识对应的本地令牌桶的步骤之后,所述方法还包括:
当所述本地令牌桶中存在令牌时,从所述本地令牌桶中获取所述业务访问请求所需的令牌;
根据获取到的令牌为所述业务访问请求对应的业务提供访问服务。
6.根据权利要求1至4任一项所述的访问频率控制方法,其特征在于,所述当根据本地令牌桶中的令牌确定客户端的访问频率大于预设阈值时,向频控服务器集群发送令牌申请请求的步骤之后,所述方法还包括:
当所述频控服务器集群查询预存的令牌桶中不存在令牌时,接收所述频控服务器集群基于所述令牌申请请求返回的令牌申请失败信息;
基于所述令牌申请失败信息,拒绝为所述业务访问请求对应的业务提供访问服务。
7.一种访问频率控制装置,其特征在于,包括:
第一接收单元,用于接收客户端发送的业务访问请求,所述业务访问请求中携带客户端标识;
确定单元,用于确定与所述客户端标识对应的令牌桶标识,并查询与所述令牌桶标识对应的本地令牌桶;
发送单元,用于当根据所述本地令牌桶中的令牌确定所述客户端的访问频率大于预设阈值时,向频控服务器集群发送令牌申请请求;
控制单元,用于接收所述频控服务器集群基于所述令牌申请请求返回令牌桶中的令牌,并根据得到的令牌为所述业务访问请求对应的业务提供访问服务;
其中,所述发送单元包括:
判断子单元,用于判断所述客户端标识是否在预设的白名单中;
发送子单元,用于若所述客户端标识在预设的白名单中,则向频控服务器集群发送令牌申请请求。
8.根据权利要求7所述的访问频率控制装置,其特征在于,所述控制单元包括:
存储子单元,用于将得到的令牌存储至所述本地令牌桶;
更新子单元,用于从所述本地令牌桶中获取所述业务访问请求所需的令牌;
提供子单元,用于根据获取到的所述业务访问请求所需的令牌,为所述业务访问请求对应的业务提供访问服务。
9.根据权利要求8所述的访问频率控制装置,其特征在于,所述更新子单元具体用于:
判断当前时刻是否在当前令牌周期内;
若当前时刻不在当前令牌周期内,则从所述本地令牌桶中获取所述业务访问请求所需的令牌,更新所述本地令牌桶中的令牌数量。
10.根据权利要求7所述的访问频率控制装置,其特征在于,所述发送子单元具体用于:
当所述客户端标识在预设的白名单中时,在预设周期内生产令牌;
当生产的令牌不能满足所述业务访问请求所需的令牌时,向频控服务器集群发送令牌申请请求。
11.根据权利要求7至10任一项所述的访问频率控制装置,其特征在于,所述访问频率控制装置还包括:
获取单元,用于当所述本地令牌桶中存在令牌时,从所述本地令牌桶中获取所述业务访问请求所需的令牌;
提供单元,用于根据获取到的令牌为所述业务访问请求对应的业务提供访问服务。
12.根据权利要求7至10任一项所述的访问频率控制装置,其特征在于,所述访问频率控制装置还包括:
第二接收单元,用于当所述频控服务器集群查询预存的令牌桶中不存在令牌时,接收所述频控服务器集群基于所述令牌申请请求返回的令牌申请失败信息;
拒绝单元,用于基于所述令牌申请失败信息,拒绝为所述业务访问请求对应的业务提供访问服务。
13.一种存储介质,其特征在于,所述存储介质存储有多条指令,所述指令适于处理器进行加载,以执行权利要求1至6任一项所述的访问频率控制方法中的步骤。
CN201810191962.8A 2018-03-08 2018-03-08 一种访问频率控制方法、装置及存储介质 Active CN108494703B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810191962.8A CN108494703B (zh) 2018-03-08 2018-03-08 一种访问频率控制方法、装置及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810191962.8A CN108494703B (zh) 2018-03-08 2018-03-08 一种访问频率控制方法、装置及存储介质

Publications (2)

Publication Number Publication Date
CN108494703A CN108494703A (zh) 2018-09-04
CN108494703B true CN108494703B (zh) 2022-05-06

Family

ID=63338068

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810191962.8A Active CN108494703B (zh) 2018-03-08 2018-03-08 一种访问频率控制方法、装置及存储介质

Country Status (1)

Country Link
CN (1) CN108494703B (zh)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109298939B (zh) * 2018-09-26 2021-04-20 腾讯科技(深圳)有限公司 分布式***的访问频率控制方法、装置、***及服务器
CN111078391A (zh) * 2018-10-22 2020-04-28 阿里巴巴集团控股有限公司 一种业务请求处理方法、装置及设备
CN111291367A (zh) * 2018-12-06 2020-06-16 北京京东尚科信息技术有限公司 访问控制方法及***、电子设备、存储介质
CN109787915B (zh) * 2018-12-14 2022-09-20 北京三快在线科技有限公司 网络访问的流量控制方法、装置、电子设备及存储介质
CN109587072A (zh) * 2019-01-04 2019-04-05 中企动力科技股份有限公司 分布式***全局限速***及方法
CN109981779B (zh) * 2019-03-27 2022-02-22 掌阅科技股份有限公司 服务提供方法、服务器及计算机存储介质
CN110213173B (zh) * 2019-06-06 2023-03-24 北京百度网讯科技有限公司 流量控制方法及装置、***、服务器、计算机可读介质
CN110276182B (zh) * 2019-06-10 2020-12-22 必成汇(成都)科技有限公司 Api分布式限流的实现方法
CN111770126B (zh) * 2019-06-28 2023-08-04 北京京东尚科信息技术有限公司 服务请求处理方法、装置及存储介质
CN110417888A (zh) * 2019-07-30 2019-11-05 中国工商银行股份有限公司 流量控制方法、流量控制装置和电子设备
CN110618878B (zh) * 2019-08-12 2022-02-01 网联清算有限公司 终态通知控速方法及装置
CN110535785B (zh) * 2019-08-29 2022-11-18 郑州阿帕斯科技有限公司 一种发送频率的控制方法、装置和分布式***
CN110943934A (zh) * 2019-11-19 2020-03-31 上海钧正网络科技有限公司 服务请求处理方法、***、终端及可读存储介质
CN110971470B (zh) * 2019-12-27 2023-06-27 思必驰科技股份有限公司 支持权重的私有云服务集群的限流方法及***
CN111314238B (zh) * 2020-02-03 2023-12-05 网银在线(北京)科技有限公司 令牌的管理方法和装置、存储介质、电子装置
CN111343102B (zh) * 2020-02-03 2023-09-26 ***股份有限公司 流速控制方法、服务端服务器、客户端服务器和***
CN111352967B (zh) * 2020-02-27 2024-02-06 携程旅游网络技术(上海)有限公司 滑动窗口算法的频次控制方法、***、设备及介质
CN111404836B (zh) * 2020-03-30 2023-09-12 北京小米移动软件有限公司 数据传输控制方法、装置、控制中心、服务器及介质
CN111641563B (zh) * 2020-05-28 2022-11-01 深圳壹账通智能科技有限公司 基于分布式场景的流量自适应方法与***
CN111782692B (zh) * 2020-06-01 2024-04-16 京东科技控股股份有限公司 一种频率控制方法及装置
CN112104567B (zh) * 2020-09-03 2022-11-18 ***股份有限公司 流量控制方法、装置、设备及介质
CN114765592A (zh) * 2021-01-15 2022-07-19 阿里巴巴集团控股有限公司 流量控制方法、装置、存储介质、服务设备和服务集群
CN113783923A (zh) * 2021-03-31 2021-12-10 北京沃东天骏信息技术有限公司 Web页面防刷处理方法、装置、设备以及存储介质
CN113051079B (zh) * 2021-03-31 2022-03-01 淄博职业学院 一种计算机过载保护装置
CN114553791A (zh) * 2022-01-19 2022-05-27 浙江百应科技有限公司 一种外部接口限流方法、装置、电子设备以及存储介质
CN114826774B (zh) * 2022-06-02 2024-01-30 天翼数字生活科技有限公司 一种终端设备日志请求控制方法、服务端和***
CN115442432B (zh) * 2022-09-06 2024-06-07 上海浦东发展银行股份有限公司 一种控制方法、装置、设备及存储介质
CN115277577B (zh) * 2022-09-28 2023-04-28 平安银行股份有限公司 数据处理方法、装置、计算机设备和计算机可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101834786A (zh) * 2010-04-15 2010-09-15 华为技术有限公司 队列调度的方法和装置
CN104219169A (zh) * 2014-09-30 2014-12-17 杭州华三通信技术有限公司 基于类的队列cbq调度方法和设备
CN104580113A (zh) * 2013-10-25 2015-04-29 腾讯科技(深圳)有限公司 一种处理外部请求的方法及装置
CN107332861A (zh) * 2017-08-11 2017-11-07 杭州亿方云网络科技有限公司 一种基于OAuth协议的开放平台架构***

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9218221B2 (en) * 2013-06-25 2015-12-22 Amazon Technologies, Inc. Token sharing mechanisms for burst-mode operations
CN107579926B (zh) * 2017-10-20 2021-02-09 南京易捷思达软件科技有限公司 基于令牌桶算法的Ceph云存储***的QoS设置方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101834786A (zh) * 2010-04-15 2010-09-15 华为技术有限公司 队列调度的方法和装置
CN104580113A (zh) * 2013-10-25 2015-04-29 腾讯科技(深圳)有限公司 一种处理外部请求的方法及装置
CN104219169A (zh) * 2014-09-30 2014-12-17 杭州华三通信技术有限公司 基于类的队列cbq调度方法和设备
CN107332861A (zh) * 2017-08-11 2017-11-07 杭州亿方云网络科技有限公司 一种基于OAuth协议的开放平台架构***

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"redis之频率限制";一溪酒;《https://www.jianshu.com/p/c1b8cc61203e》;20171205;第1、2页 *

Also Published As

Publication number Publication date
CN108494703A (zh) 2018-09-04

Similar Documents

Publication Publication Date Title
CN108494703B (zh) 一种访问频率控制方法、装置及存储介质
EP3979592A1 (en) Decentralization processing method, communication proxy, host and storage medium
US8719297B2 (en) System for managing data collection processes
CN109064345A (zh) 消息处理方法、***以及计算机可读存储介质
JP4760491B2 (ja) イベント処理システム、イベント処理方法、イベント処理装置、及び、イベント処理プログラム
CN111338773B (zh) 一种分布式定时任务调度方法、调度***及服务器集群
CN111030936A (zh) 网络访问的限流控制方法、装置及计算机可读存储介质
WO2019237594A1 (zh) 会话保持方法、装置、计算机设备及存储介质
JPWO2018220709A1 (ja) 資源管理システム、管理装置、方法およびプログラム
US20070265976A1 (en) License distribution in a packet data network
CN110471749A (zh) 任务处理方法、装置、计算机可读存储介质和计算机设备
CN113285884B (zh) 流量控制方法及***
CN115277577A (zh) 数据处理方法、装置、计算机设备和计算机可读存储介质
CN107196949A (zh) 限制同一用户账号登录终端数量的***
CN113238861A (zh) 一种任务执行方法和装置
CN110430062B (zh) 登录请求处理方法、装置、设备及介质
CN111339114A (zh) 一种数据访问方法、装置、设备及存储介质
CN108520401B (zh) 用户名单管理方法、装置、平台及存储介质
CN107426012B (zh) 一种基于超融合架构的故障恢复方法及其装置
CN108153794B (zh) 页面缓存数据刷新方法、装置及***
CN112487454A (zh) 一种数据管理方法、装置、设备及存储介质
JP2004348192A (ja) Job分配制御方法
CN113905091B (zh) 用于对访问请求进行处理的方法及装置
CN115421889A (zh) 进程间的请求管理方法、装置、电子设备及存储介质
CN110677494B (zh) 访问响应方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant