【技术实现步骤摘要】
限流方法及装置
本公开的实施例涉及网络
,尤其涉及一种限流方法及装置。
技术介绍
在网络服务中,由服务器提供服务,客户端访问服务器可以获取到对应的服务。当客户端较多时,服务器的压力较大,此时通常通过限流来控制客户端对服务器的访问,以减轻服务器的压力。现有技术中,对客户端进行限流的方案主要包括两种。其中,第一种方案主要通过对服务器设置一个总的限流阈值,当服务器的访问量达到该限流器的限流阈值时,拒绝客户端对服务器的访问。第二种方案主要通过对每个客户端设置一个限流阈值,当该客户端的访问量达到该客户端对应的限流阈值时,拒绝该客户端对服务器的访问。专利技术人对上述方案进行研究发现,对于第一种方案,若其中一个客户端导致访问量超出阈值时,拒绝所有客户端的访问,会影响其他正常客户端的访问;对于第二种方案,每个客户端的限流阈值难以确定,且当客户端数量较多时限流阈值的人工成本较高,此外,无法准确的将服务器可承受的访问量分配至各客户端。
技术实现思路
本公开的实施例提供一种限流方法及装置,可以在客户端异常时将异常客户端对应节点的限流阈值,分别分配给异常客户端和其余正常客户端,从而避免 ...
【技术保护点】
1.一种限流方法,其特征在于,所述方法包括:监控预设限流二叉树中的每个节点的访问量,所述节点具有限流阈值;若所述节点中的一个目标异常节点的访问量大于所述目标异常节点的限流阈值,则从所述目标异常节点对应的客户端中确定异常客户端和正常客户端;将所述目标异常节点的限流阈值分配给所述异常客户端和所述正常客户端,得到对应所述异常客户端的异常子节点和对应所述正常客户端的正常子节点;以及根据更新之后的限流二叉树进行访问控制。
【技术特征摘要】
1.一种限流方法,其特征在于,所述方法包括:监控预设限流二叉树中的每个节点的访问量,所述节点具有限流阈值;若所述节点中的一个目标异常节点的访问量大于所述目标异常节点的限流阈值,则从所述目标异常节点对应的客户端中确定异常客户端和正常客户端;将所述目标异常节点的限流阈值分配给所述异常客户端和所述正常客户端,得到对应所述异常客户端的异常子节点和对应所述正常客户端的正常子节点;以及根据更新之后的限流二叉树进行访问控制。2.根据权利要求1所述的方法,其特征在于,所述从所述目标异常节点对应的客户端中确定异常客户端和正常客户端的步骤,包括:统计所述目标异常节点对应的所述客户端在预设时间段内的访问量;将客户端序列中排序靠前的所述客户端作为所述异常客户端,并将其余客户端作为所述正常客户端,其中,所述客户端序列是通过对所述目标异常节点对应的所述客户端按照所述访问量降序排列得到。3.根据权利要求2所述的方法,其特征在于,所述将所述目标异常节点的限流阈值分配给所述异常客户端和所述正常客户端,得到对应所述异常客户端的异常子节点和对应所述正常客户端的正常子节点的步骤,包括:计算所述异常客户端的访问量与所述目标异常节点的所述访问量的比值;根据所述比值,将所述目标异常节点的所述限流阈值分为对应所述异常客户端的第一限流阈值和对应所述正常客户端的第二限流阈值;创建对应所述异常客户端的所述异常子节点和对应所述正常客户端的所述正常子节点,并进行初始化;分别将所述第一限流阈值设置为所述异常子节点的限流阈值,以及,将所述第二限流阈值设置为所述正常子节点的限流阈值。4.根据权利要求3所述的方法,其特征在于,所述节点还具有父节点、深度,在所述分别将所述第一限流阈值设置为所述异常子节点的限流阈值,以及,将所述第二限流阈值设置为所述正常子节点的限流阈值的步骤之后,所述方法还包括:将所述目标异常节点设置为所述异常子节点、所述正常子节点的父节点;根据所述目标异常节点的深度,设置所述异常子节点、所述正常子节点的深度;将所述访问量最高的所述客户端的客户端标识设置为所述异常子节点的客户端标识,以及,将所述正常子节点的客户端标识设置为空。5.根据权利要求1至4其中任一项所述的方法,其特征在于,在所述将所述目标异常节点的限流阈值分配给所述异常客户端和所述正常客户端,得到对应所述异常客户端的异常子...
【专利技术属性】
技术研发人员:居振飞,戴觊婧,
申请(专利权)人:北京三快在线科技有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。