System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及数据库,尤其涉及一种数据限流方法、装置和计算机可读介质。
技术介绍
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、与所述至少一个处理器通信连接的存储器;其中,
36、所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
37、获取基于微服务的数据传输通道的数据操作语句;所述数据操作语句用于实现所述微服务中参数的数据传输;
38、根据所述数据操作语句,确定所述数据传输过程中被限流的参数;
39、基于所述被限流的参数的数据操作类型,确定所述被限流的参数的限流阈值;
40、当所述数据传输通道的数据流量超过所述限流阈值时,对所述数据传输通道进行限流操作。
41、本说明书实施例提供的一种计算机可读介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现上述数据限流方法。
42、本说明书一个实施例至少能够达到以下有益效果:
43、通过获取基于微服务的数据传输通道的数据操作语句,确定数据传输过程中被限流参数,根据被限流参数的数据操作类型不同,确定不同的限流阈值,并在数据传输通道的数据流量超过限流阈值时,对数据传输通道进行限流操作。本说明书实施例提供的数据限流方法能够自定义被限流参数,可以为不同的数据传输通道设置不同的流量阈值,灵活满足各种数据限流需求。
本文档来自技高网...【技术保护点】
1.一种数据限流方法,其特征在于,包括:
2.根据权利要求1所述的数据限流方法,其特征在于,所述判断所述数据操作语句是否包含待限流参数,得到判断结果,具体包括:
3.根据权利要求1所述的数据限流方法,其特征在于,所述基于所述被限流的参数的数据操作类型,确定所述被限流的参数的限流阈值,具体包括:
4.根据权利要求3所述的数据限流方法,其特征在于,所述数据操作类型包括读取数据操作和写入数据操作;
5.根据权利要求1所述的数据限流方法,其特征在于,所述方法还包括:
6.根据权利要求5所述的数据限流方法,其特征在于,所述获取目标数据传输通道预设时间的请求流量数据之前,还包括:
7.根据权利要求1所述的数据限流方法,其特征在于,所述对所述数据传输通道进行限流操作后,还包括:
8.根据权利要求7所述的数据限流方法,其特征在于,所述生成预警指令,发送至控制中心后,还包括:
9.一种数据限流装置,其特征在于,包括:
10.一种计算机可读介质,其上存储有计算机可读指令,其特征在于,所述计算机
...【技术特征摘要】
1.一种数据限流方法,其特征在于,包括:
2.根据权利要求1所述的数据限流方法,其特征在于,所述判断所述数据操作语句是否包含待限流参数,得到判断结果,具体包括:
3.根据权利要求1所述的数据限流方法,其特征在于,所述基于所述被限流的参数的数据操作类型,确定所述被限流的参数的限流阈值,具体包括:
4.根据权利要求3所述的数据限流方法,其特征在于,所述数据操作类型包括读取数据操作和写入数据操作;
5.根据权利要求1所述的数据限流方法,其特征在于,所述方法还包括:
6.根据...
【专利技术属性】
技术研发人员:崔凯,
申请(专利权)人:云控智行科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。