System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及分布式应用,更具体地说,它涉及一种分布式应用系统应用过程的访问流量控制方法及系统。
技术介绍
1、分布式应用系统在新系统上线或者版本投产时,由于新系统未经过实际应用的验证,若直接将访问流量导入,一旦出现异常,其影响范围较广。
2、为此,现有技术中采用负载均衡设备f5或者nginx进行流量控制,分发到应用系统。一般情况下,负载均衡设备接收流量,根据自身策略进行流量分发,如设置整体流量导入新系统的比例,应用系统接收流量进行处理,返回结果。然而,上述的负载均衡设备无法实现基于业务的差异化流量控制,比如用户级别控制、接口级别控制;此外,在上述的返回结果表示存在异常时,负载均衡设备仍持续分发流量,这就导致新系统上线或者版本投产过程中访问流量的控制可靠性与灵活性较差。
3、因此,如何研究设计一种能够克服上述缺陷的分布式应用系统应用过程的访问流量控制方法及系统是我们目前急需解决的问题。
技术实现思路
1、为解决现有技术中的不足,本专利技术的目的是提供一种分布式应用系统应用过程的访问流量控制方法及系统,在新系统发布或者新旧系统切换期间,可以根据第一访问流量执行新访问链路的执行反馈结果以循序渐进的方式精准控制流量,既能做到生产流量验证,又能控制影响范围,保障系统的稳定上线。
2、本专利技术的上述技术目的是通过以下技术方案得以实现的:
3、第一方面,提供了一种分布式应用系统应用过程的访问流量控制方法,包括以下步骤:
4、获取第一
5、依据第一访问轮的极限阈值更新资源抢占模型,得到第一访问轮所对应的资源抢占模型;
6、从第一访问轮的全部访问流量中筛选出符合访问约束条件的初始访问流量;
7、将初始访问流量输入到相应的资源抢占模型中进行访问链路判决,得到执行新访问链路的第一访问流量,全部访问流量中除第一访问流量的剩余流量执行旧访问链路;
8、依据第一访问流量执行新访问链路的执行反馈结果动态调整第一访问轮的访问参数,得到下一访问轮的访问参数;
9、重复进行访问链路判决,直至所生成的极限阈值不小于新访问链路所对应的流量上限。
10、进一步的,所述极限阈值的生成表达式具体为:
11、ki=2m
12、
13、其中,ki表示第i访问轮的极限阈值;m表示第i访问轮中极限阈值的变化步长;ni表示第i访问轮的访问参数。
14、进一步的,所述访问约束条件包括用户级和接口级;若访问流量的业务属性在访问约束条件限定的范围内,则判定访问流量符合访问约束条件。
15、进一步的,所述资源抢占模型采用串行规则实现,具体实现过程为:
16、串行规则为桶型数据结构;
17、并发情况下,线程按照时间顺序依次进入桶中,尝试获取存储设备的资源;
18、基于先进先出的原则,先进入桶的线程优先获得资源权限,后进入桶的线程后获得资源权限;
19、一个线程获得资源权限后,执行实时阈值加1,得到更新后的实时阈值;
20、若更新后的实时阈值小于相应的极限阈值,则下一个线程进行获取资源权限的操作;
21、若更新后的实时阈值等于相应的极限阈值,则关闭资源抢占模型。
22、进一步的,所述资源抢占模型采用状态机规则,具体实现过程为:
23、存储设备中存在的资源,其状态为初态;
24、并发情况下,所有线程均能获取到初态的资源;
25、所有获取到资源的线程,以初态为条件,尝试去更新资源到终态;
26、基于资源独占、先到先得的原则,最先拿到资源的线程才能更新状态成功;
27、一个线程获得资源权限后,执行实时阈值加1,得到更新后的实时阈值;
28、若更新后的实时阈值小于相应的极限阈值,则下一批次的线程进行获取资源权限的操作;
29、若更新后的实时阈值等于相应的极限阈值,则关闭资源抢占模型。
30、进一步的,若所述执行反馈结果表示所有交易均正常,则访问参数的调整表达式具体为:
31、ni+1=ni+f1(x1)
32、f1(x1)>0,f1'(x1)≥0
33、其中,ni+1表示第i+1访问轮的访问参数;ni表示第i访问轮的访问参数;f1(x1)表示调整值随交易均正常的连续次数x1变化的第一调整函数。
34、进一步的,若所述执行反馈结果表示交易存在异常,则访问参数的调整过程具体为:
35、ni+1=ni+f2(x2)
36、f2(x2)<0,f’2(x2)≤0
37、其中,ni+1表示第i+1访问轮的访问参数;ni表示第i访问轮的访问参数;f2(x2)表示调整值随交易存在异常的连续次数x2变化的第二调整函数。
38、第二方面,提供了一种分布式应用系统应用过程的访问流量控制系统,包括:
39、阈值生成模块,用于获取第一访问轮的访问参数,并依据第一访问轮的访问参数生成第一访问轮的极限阈值;
40、模型更新模块,用于依据第一访问轮的极限阈值更新资源抢占模型,得到第一访问轮所对应的资源抢占模型;
41、流量筛选模块,用于从第一访问轮的全部访问流量中筛选出符合访问约束条件的初始访问流量;
42、链路判决模块,用于将初始访问流量输入到相应的资源抢占模型中进行访问链路判决,得到执行新访问链路的第一访问流量,全部访问流量中除第一访问流量的剩余流量执行旧访问链路;
43、参数调整模块,用于依据第一访问流量执行新访问链路的执行反馈结果动态调整第一访问轮的访问参数,得到下一访问轮的访问参数;
44、循环执行模块,用于重复进行访问链路判决,直至所生成的极限阈值不小于新访问链路所对应的流量上限。
45、第三方面,提供了一种计算机终端,包含存储器、处理器及存储在存储器并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面中任意一项所述的一种分布式应用系统应用过程的访问流量控制方法。
46、第四方面,提供了一种计算机可读介质,其上存储有计算机程序,所述计算机程序被处理器执行可实现如第一方面中任意一项所述的一种分布式应用系统应用过程的访问流量控制方法。
47、与现有技术相比,本专利技术具有以下有益效果:
48、1、本专利技术提供的一种分布式应用系统应用过程的访问流量控制方法,在新系统发布或者新旧系统切换期间,可以根据第一访问流量执行新访问链路的执行反馈结果以循序渐进的方式精准控制流量,既能做到生产流量验证,又能控制影响范围,保障系统的稳定上线;
49、2、本专利技术针对不同访问轮次所对应的极限阈值进行动态生成,且生成过程依赖动态更新后的访问参数,平衡了系统稳定上线的可靠本文档来自技高网...
【技术保护点】
1.一种分布式应用系统应用过程的访问流量控制方法,其特征是,包括以下步骤:
2.根据权利要求1所述的一种分布式应用系统应用过程的访问流量控制方法,其特征是,所述极限阈值的生成表达式具体为:
3.根据权利要求1所述的一种分布式应用系统应用过程的访问流量控制方法,其特征是,所述访问约束条件包括用户级和接口级;若访问流量的业务属性在访问约束条件限定的范围内,则判定访问流量符合访问约束条件。
4.根据权利要求1所述的一种分布式应用系统应用过程的访问流量控制方法,其特征是,所述资源抢占模型采用串行规则实现,具体实现过程为:
5.根据权利要求1所述的一种分布式应用系统应用过程的访问流量控制方法,其特征是,所述资源抢占模型采用状态机规则,具体实现过程为:
6.根据权利要求1所述的一种分布式应用系统应用过程的访问流量控制方法,其特征是,若所述执行反馈结果表示所有交易均正常,则访问参数的调整表达式具体为:
7.根据权利要求1所述的一种分布式应用系统应用过程的访问流量控制方法,其特征是,若所述执行反馈结果表示交易存在异常,则访问
8.一种分布式应用系统应用过程的访问流量控制系统,其特征是,包括:
9.一种计算机终端,包含存储器、处理器及存储在存储器并可在处理器上运行的计算机程序,其特征是,所述处理器执行所述程序时实现如权利要求1-7中任意一项所述的一种分布式应用系统应用过程的访问流量控制方法。
10.一种计算机可读介质,其上存储有计算机程序,其特征是,所述计算机程序被处理器执行可实现如权利要求1-7中任意一项所述的一种分布式应用系统应用过程的访问流量控制方法。
...【技术特征摘要】
1.一种分布式应用系统应用过程的访问流量控制方法,其特征是,包括以下步骤:
2.根据权利要求1所述的一种分布式应用系统应用过程的访问流量控制方法,其特征是,所述极限阈值的生成表达式具体为:
3.根据权利要求1所述的一种分布式应用系统应用过程的访问流量控制方法,其特征是,所述访问约束条件包括用户级和接口级;若访问流量的业务属性在访问约束条件限定的范围内,则判定访问流量符合访问约束条件。
4.根据权利要求1所述的一种分布式应用系统应用过程的访问流量控制方法,其特征是,所述资源抢占模型采用串行规则实现,具体实现过程为:
5.根据权利要求1所述的一种分布式应用系统应用过程的访问流量控制方法,其特征是,所述资源抢占模型采用状态机规则,具体实现过程为:
6.根据权利要求1所述的一种分布式应...
【专利技术属性】
技术研发人员:李安清,
申请(专利权)人:四川新网银行股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。