本申请涉及计算机术领域,尤其涉及系统限流方法、装置、设备、存储介质及产品。
背景技术:
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、统计预设时间内累计收到的所述目标资源码的数量;
25、基于所述目标资源码所映射的目标限流规则,确定限流阈值;
26、判断所述目标资源码的数量是否超过所述限流阈值,若所述目标资源码的数量超过所述限流阈值,则对所述目标租户终端的接口请求执行延迟响应的操作,得到限流结果。
27、此外,为实现上述目的,本申请还提出一种系统限流装置,所述系统限流装置包括:
28、接收模块,用于接收目标租户终端发送的限流配置信息,其中,所述目标租户终端是所述租户终端集群中的任一租户终端;
29、生成模块,用于基于所述限流配置信息,生成所述目标租户终端的目标限流方案;
30、限流模块,用于基于所述目标限流方案,对所述目标租户终端的接口请求进行限流处理,得到限流结果。
31、此外,为实现上述目的,本申请还提出一种系统限流设备,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序配置为实现如上文所述的系统限流方法的步骤。
32、此外,为实现上述目的,本申请还提出一种存储介质,所述存储介质为计算机可读存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上文所述的系统限流方法的步骤。
33、此外,为实现上述目的,本申请还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现如上文所述的系统限流方法的步骤。
34、本申请提出的一个或多个技术方案,至少具有以下技术效果:
35、与相关技术中,通常是开发人员根据业务系统的限流需求,开发相应的包含限流规则的限流方案,通过限流方案实现对业务系统的限流。但是该限流方案只适用于固定限流需求,当限流需求发生变化时,需要开发人员对其限流方案进行重构,导致业务系统限流方案的开发效率低下相比,本申请通过多租户限流平台接收目标租户终端发送的租户个性化配置的限流配置信息,并针对目标租户终端生成相应的目标限流方案,最终基于所述目标限流方案,对所述目标租户终端的接口请求进行限流处理,得到限流结果。可理解的是,当限流需求发生变化时,企业只需要通过租户终端将需求的限流配置信息上传至本申请的多租户限流平台,多租户限流平台即可生成相应租户终端的目标限流方案,对该企业的租户终端的接口请求进行限流处理,即无需开发人员对其限流方案进行人工重构与开发,实现自动化的业务系统限流方案的生成,以此提高业务系统限流方案的开发效率。
1.一种系统限流方法,其特征在于,应用于多租户限流平台,所述多租户限流平台与租户终端集群通信连接,所述租户终端集群包括多个租户终端,所述系统限流的方法包括:
2.如权利要求1所述的系统限流方法,其特征在于,所述基于所述目标限流方案,对所述目标租户终端的接口请求进行限流处理,得到限流结果的步骤,包括:
3.如权利要求2所述的系统限流方法,其特征在于,所述基于所述目标限流方案,对所述接口请求进行规则匹配,得到目标限流规则的步骤,包括:
4.如权利要求2所述的系统限流方法,其特征在于,所述基于所述目标限流规则,对所述目标租户终端的接口请求进行限流处理,得到限流结果的步骤,包括:
5.如权利要求2所述的系统限流方法,其特征在于,所述基于所述目标限流规则,对所述目标租户终端的接口请求进行限流处理,得到限流结果的步骤,包括:
6.如权利要求5所述的系统限流方法,其特征在于,所述基于所述目标资源码,对所述目标租户终端的接口请求进行限流处理,得到限流结果的步骤,包括:
7.一种系统限流装置,其特征在于,所述装置包括:
8.一种系统限流设备,其特征在于,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序配置为实现如权利要求1至6中任一项所述的系统限流方法的步骤。
9.一种存储介质,其特征在于,所述存储介质为计算机可读存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6中任一项所述的系统限流方法的步骤。
10.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6中任一项所述的系统限流方法的步骤。