System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 正则匹配死亡轮询处理方法、装置、计算机设备及存储介质制造方法及图纸_技高网

正则匹配死亡轮询处理方法、装置、计算机设备及存储介质制造方法及图纸

技术编号:40550549 阅读:8 留言:0更新日期:2024-03-05 19:09
本发明专利技术实施例公开了正则匹配死亡轮询处理方法、装置、计算机设备及存储介质。所述方法包括:获取待解析数据;记录解析的相关数据;对所述待解析数据进行正则匹配;构建监听线程,利用所述监听线程监听正则匹配过程,当正则匹配过程出现异常情况,中断正则匹配过程,当正则匹配过程未出现异常情况,生成匹配结果。通过实施本发明专利技术实施例的方法可实现防止JDK在解析过程中进入死亡轮训。

【技术实现步骤摘要】

本专利技术涉及数据处理方法,更具体地说是指正则匹配死亡轮询处理方法、装置、计算机设备及存储介质


技术介绍

1、正则表达式是对字符串和特殊字符操作的一种逻辑公式,是用事先定义好的一些特定字符及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑,正则表达式是一种文本模式,该模式描述在搜索文本时要匹配的一个或多个字符串,因此,其在海量的大数据中提取有效信息方面有着举足轻重的地位。

2、jdk(java开发工具包,java development kit)提供的工具类java.util.regex.pattern工具类,对正则和待解析数据进行匹配;现在jdk提供的匹配方式,在遇到不规范的正则表达式死亡循环问题时,代码无法自动结束或跳出循环,无限循环的java代码会导致服务器当前线程对应cpu直接处于拉满状态,资源达到99.9%,导致服务器异常。

3、因此,有必要设计一种新的方法,实现防止jdk在解析过程中进入死亡轮训。


技术实现思路

1、本专利技术的目的在于克服现有技术的缺陷,提供正则匹配死亡轮询处理方法、装置、计算机设备及存储介质。

2、为实现上述目的,本专利技术采用以下技术方案:正则匹配死亡轮询处理方法,包括:

3、获取待解析数据;

4、记录解析的相关数据;

5、对所述待解析数据进行正则匹配;

6、构建监听线程,利用所述监听线程监听正则匹配过程,当正则匹配过程出现异常情况,中断正则匹配过程,当正则匹配过程未出现异常情况,生成匹配结果。

7、其进一步技术方案为:所述获取待解析数据之后,还包括:

8、获取解析规则。

9、其进一步技术方案为:所述记录解析的相关数据,包括:

10、采用线程安全的集合记录执行线程信息、正则、待解析数据以及时间戳。

11、其进一步技术方案为:所述对所述待解析数据进行正则匹配,包括:

12、采用jdk工具类对正则以及所述待解析数据进行匹配。

13、其进一步技术方案为:所述构建监听线程,利用所述监听线程监听正则匹配过程,当正则匹配过程出现异常情况,中断正则匹配过程,当正则匹配过程未出现异常情况,生成匹配结果,包括:

14、构建监听线程,利用所述监听线程监听正则匹配过程;

15、当所述集合中的待解析数据的正则匹配时长超过设定阈值,则确定所述正则匹配过程出现异常情况,中断当前的正则匹配过程,记录出现异常情况所对应的待解析数据以及对应的正则,并移除所述集合中记录的数据;当正则匹配过程未出现异常情况,移除所述集合中记录的数据,并生成匹配结果。

16、本专利技术还提供了正则匹配死亡轮询处理装置,包括:

17、数据获取单元,用于获取待解析数据;

18、记录单元,用于记录解析的相关数据;

19、匹配单元,用于对所述待解析数据进行正则匹配;

20、监听单元,用于构建监听线程,利用所述监听线程监听正则匹配过程,当正则匹配过程出现异常情况,中断正则匹配过程,当正则匹配过程未出现异常情况,生成匹配结果。

21、其进一步技术方案为:还包括:

22、规则获取单元,用于获取解析规则。

23、其进一步技术方案为:所述记录单元,用于采用线程安全的集合记录执行线程信息、正则、待解析数据以及时间戳。

24、本专利技术还提供了一种计算机设备,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现上述的方法。

25、本专利技术还提供了一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法。

26、本专利技术与现有技术相比的有益效果是:本专利技术通过对待解析数据进行正则匹配时,构建监听线程,并利用该监听线程实时监听整个正则匹配过程,当出现异常情况时,及时中断正则匹配过程,实现防止jdk在解析过程中进入死亡轮训。

27、下面结合附图和具体实施例对本专利技术作进一步描述。

本文档来自技高网...

【技术保护点】

1.正则匹配死亡轮询处理方法,其特征在于,包括:

2.根据权利要求1所述的正则匹配死亡轮询处理方法,其特征在于,所述获取待解析数据之后,还包括:

3.根据权利要求1所述的正则匹配死亡轮询处理方法,其特征在于,所述记录解析的相关数据,包括:

4.根据权利要求1所述的正则匹配死亡轮询处理方法,其特征在于,所述对所述待解析数据进行正则匹配,包括:

5.根据权利要求1所述的正则匹配死亡轮询处理方法,其特征在于,所述构建监听线程,利用所述监听线程监听正则匹配过程,当正则匹配过程出现异常情况,中断正则匹配过程,当正则匹配过程未出现异常情况,生成匹配结果,包括:

6.正则匹配死亡轮询处理装置,其特征在于,包括:

7.根据权利要求6所述的正则匹配死亡轮询处理装置,其特征在于,还包括:

8.根据权利要求6所述的正则匹配死亡轮询处理装置,其特征在于,所述记录单元,用于采用线程安全的集合记录执行线程信息、正则、待解析数据以及时间戳。

9.一种计算机设备,其特征在于,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至5中任一项所述的方法。

10.一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至5中任一项所述的方法。

...

【技术特征摘要】

1.正则匹配死亡轮询处理方法,其特征在于,包括:

2.根据权利要求1所述的正则匹配死亡轮询处理方法,其特征在于,所述获取待解析数据之后,还包括:

3.根据权利要求1所述的正则匹配死亡轮询处理方法,其特征在于,所述记录解析的相关数据,包括:

4.根据权利要求1所述的正则匹配死亡轮询处理方法,其特征在于,所述对所述待解析数据进行正则匹配,包括:

5.根据权利要求1所述的正则匹配死亡轮询处理方法,其特征在于,所述构建监听线程,利用所述监听线程监听正则匹配过程,当正则匹配过程出现异常情况,中断正则匹配过程,当正则匹配过程未出现异常情况,生成匹配结果,包括:

...

【专利技术属性】
技术研发人员:董超王贤龙杨文燕
申请(专利权)人:浙江乾冠信息安全研究院有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1