异常数据检测方法技术

技术编号:39739812 阅读:9 留言:0更新日期:2023-12-17 23:41
本申请公开了异常数据检测方法

【技术实现步骤摘要】
异常数据检测方法、装置、电子设备及计算机可读介质


[0001]本申请涉及大数据数据处理
,尤其涉及一种异常数据检测方法

装置

电子设备及计算机可读介质


技术介绍

[0002] 目前,
JAVA
应用开发过程中,通常数据库连接的创建

数据库连接的回收,会在
mybatis、jpa
等框架内部完成
。ORM

Object Relational Mapping
)框架:一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术
。ORM
框架是连接数据库的桥梁,只要提供了持久化类与表的映射关系,
ORM
框架在运行时就能参照映射文件的信息,把对象持久化到数据库中

正确使用
ORM
框架不会出现数据库连接泄露的情况
。JDBC
:全称 Java Database Connectivity

Java
数据库连接,是
Java
语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法
。JDBC
是面向关系型数据库的

当开发人员直接使用
JAVA JDBC API
接口操作数据库连接,使用不当的情况下,会出现数据库连接泄露,进而导致数据库连接池中的连接被占用,无法释放,最终导致数据库连接池耗尽,应用程序无法再获取到数据库连接,应用程序无法正常工作


技术实现思路

[0003]有鉴于此,本申请实施例提供一种异常数据检测方法

装置

电子设备及计算机可读介质,能够解决现有的数据库连接泄露,导致数据库连接池中的连接被占用,无法释放,最终导致数据库连接池耗尽,应用程序无法再获取到数据库连接,应用程序无法正常工作的问题

[0004]为实现上述目的,根据本申请实施例的一个方面,提供了一种异常数据检测方法,包括:接收异常数据检测请求,定位目标业务代码数据;确定目标业务代码数据所在的函数调用栈,进而确定函数调用栈中目标业务代码数据之前的框架代码数据的数量;根据数量,确定函数调用栈的风险类型;响应于风险类型为数据库连接泄漏,输出函数调用栈和风险类型

[0005]可选地,确定函数调用栈的风险类型,包括:响应于数量小于预设阈值,确定函数调用栈的风险类型为数据库连接泄漏

[0006]可选地,定位目标业务代码数据,包括:获取目标平台标识;将目标平台标识所在的代码数据确定为目标业务代码数据

[0007]可选地,获取目标平台标识,包括:调用平台标识库,以将平台标识库中的各个平台标识与各个函数调用栈中的代码段数据进行匹配,将匹配到的平台标识确定为目标平台标识

[0008]可选地,在输出函数调用栈和风险类型之前,方法还包括:调用代理程序以探针的形式对函数调用栈进行的数据库连接获取进行拦截

[0009]可选地,调用代理程序以探针的形式对函数调用栈进行的数据库连接获取进行拦截,包括:基于风险类型

函数调用栈和代理程序,生成异步任务;调用线程池,以执行异步任务,调用对应的代理程序以探针的形式对函数调用栈进行的数据库连接获取进行拦截

[0010]可选地,确定函数调用栈的风险类型,包括:响应于数量大于或等于预设阈值,确定函数调用栈的风险类型为数据库连接未泄漏

[0011]另外,本申请还提供了一种异常数据检测装置,包括:接收单元,被配置成接收异常数据检测请求,定位目标业务代码数据;数量确定单元,被配置成确定目标业务代码数据所在的函数调用栈,进而确定函数调用栈中目标业务代码数据之前的框架代码数据的数量;风险类型确定单元,被配置成根据数量,确定函数调用栈的风险类型;输出单元,被配置成响应于风险类型为数据库连接泄漏,输出函数调用栈和风险类型

[0012]可选地,风险类型确定单元进一步被配置成:响应于数量小于预设阈值,确定函数调用栈的风险类型为数据库连接泄漏

[0013]可选地,接收单元进一步被配置成:获取目标平台标识;将目标平台标识所在的代码数据确定为目标业务代码数据

[0014]可选地,接收单元进一步被配置成:调用平台标识库,以将平台标识库中的各个平台标识与各个函数调用栈中的代码段数据进行匹配,将匹配到的平台标识确定为目标平台标识

[0015]可选地,装置还包括拦截单元,被配置成:调用代理程序以探针的形式对函数调用栈进行的数据库连接获取进行拦截

[0016]可选地,拦截单元进一步被配置成:基于风险类型

函数调用栈和代理程序,生成异步任务;调用线程池,以执行异步任务,调用对应的代理程序以探针的形式对函数调用栈进行的数据库连接获取进行拦截

[0017]可选地,风险类型确定单元进一步被配置成:响应于数量大于或等于预设阈值,确定函数调用栈的风险类型为数据库连接未泄漏

[0018]另外,本申请还提供了一种异常数据检测电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如上述的异常数据检测方法

[0019]另外,本申请还提供了一种计算机可读介质,其上存储有计算机程序,程序被处理器执行时实现如上述的异常数据检测方法

[0020]为实现上述目的,根据本申请实施例的又一个方面,提供了一种计算机程序产品

[0021]本申请实施例的一种计算机程序产品,包括计算机程序,程序被处理器执行时实现本申请实施例提供的异常数据检测方法

[0022]上述专利技术中的一个实施例具有如下优点或有益效果:本申请通过接收异常数据检测请求,定位目标业务代码数据;确定目标业务代码数据所在的函数调用栈,进而确定函数调用栈中目标业务代码数据之前的框架代码数据的数量;根据数量,确定函数调用栈的风险类型;响应于风险类型为数据库连接泄漏,输出函数调用栈和风险类型

以无侵入应用程序代码的方式,通过分析函数调用栈,准确快速地识别出有数据库连接泄露风险的函数调用栈并输出给相关人员进行处理,保证应用程序正常工作

[0023]上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明

附图说明
[0024]附图用于更好地理解本申请,不构成对本申请的不当限定

其中:图1是根据本申请一个实施例的异常数据检测方法的主要流程的示意图;图2是根据本申请一个实施例的异常数据检测方本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种异常数据检测方法,其特征在于,包括:接收异常数据检测请求,定位目标业务代码数据;确定所述目标业务代码数据所在的函数调用栈,进而确定所述函数调用栈中所述目标业务代码数据之前的框架代码数据的数量;根据所述数量,确定所述函数调用栈的风险类型;响应于所述风险类型为数据库连接泄漏,输出所述函数调用栈和所述风险类型
。2.
根据权利要求1所述的方法,其特征在于,所述确定所述函数调用栈的风险类型,包括:响应于所述数量小于预设阈值,确定所述函数调用栈的风险类型为数据库连接泄漏
。3.
根据权利要求1所述的方法,其特征在于,所述定位目标业务代码数据,包括:获取目标平台标识;将所述目标平台标识所在的代码数据确定为目标业务代码数据
。4.
根据权利要求3所述的方法,其特征在于,所述获取目标平台标识,包括:调用平台标识库,以将所述平台标识库中的各个平台标识与各个函数调用栈中的代码段数据进行匹配,将匹配到的平台标识确定为目标平台标识
。5.
根据权利要求1所述的方法,其特征在于,在所述输出所述函数调用栈和所述风险类型之前,所述方法还包括:调用代理程序以探针的形式对所述函数调用栈进行的数据库连接获取进行拦截
。6.
根据权利要求5所述的方法,其特征在于,所述调用代理程序以探针的形式对所述函数调用栈进行的数据库连接获取进行拦截,包括:基于所述风险类型

所述函数调用栈和代理程序,生成异步任务;调用线程池,以执行所述异步任务,调用对应的代理程序以探针的形式对所述函数调用栈进行的数据库连接获取进行拦截
。7.
根据权利要求1所述的方法,其特征在于,所述确定所述函数调用栈的风险类型,包括:响应于所述数量大于或等于预设阈值,确定所述函数调用栈的风险类型为数据库连接未泄漏
。8.
一种异常数据检测装置,其特征在于,包括:接收单元,被配置成接收异常数据检测请求,定位目标业务代码数据;数量确定单元,被配置成确定...

【专利技术属性】
技术研发人员:魏聪胡元
申请(专利权)人:建信金融科技有限责任公司
类型:发明
国别省市:

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

1