[发明专利]数据库连接泄露的定位方法、装置、设备及可读存储介质在审
申请号: | 201910526315.2 | 申请日: | 2019-06-18 |
公开(公告)号: | CN110245508A | 公开(公告)日: | 2019-09-17 |
发明(设计)人: | 胡正莹;李梓贞;陈庆鸿;吴永杰;王一波;曾良波;蔡文璇 | 申请(专利权)人: | 广东电网有限责任公司;广东电网有限责任公司管理科学研究院 |
主分类号: | G06F21/60 | 分类号: | G06F21/60;G06F16/25 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 侯珊 |
地址: | 510600 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据库连接 堆栈 线程 泄露 堆栈数据 拦截 数据库访问请求 可读存储介质 预设时间间隔 存储介质 定位装置 堆栈缓存 故障定位 缓存时长 技术效果 人工成本 预设时长 监测 对线 移除 预设 释放 应用 发现 | ||
本发明公开了一种数据库连接泄露的定位方法,包括:当监测到数据库访问请求时,拦截java数据库连接,得到当前线程堆栈;将当前线程堆栈缓存到线程堆栈数据集中;当拦截到java数据库连接释放时,从线程堆栈数据集中移除当前线程堆栈;对线程堆栈数据集中的线程堆栈数量进行监测;若线程堆栈数量在预设时间间隔内均大于预设值,将缓存时长大于预设时长的线程堆栈对应的java数据库连接定位为已泄露数据库连接。应用本发明实施例所提供的技术方案,较大地降低了人工成本,能够及时发现已泄露数据库连接,较大地提高了故障定位效率。本发明还公开了一种数据库连接泄露的定位装置、设备及存储介质,具有相应技术效果。
技术领域
本发明涉及数据库访问技术领域,特别是涉及一种数据库连接泄露的定位方法、装置、设备及计算机可读存储介质。
背景技术
在对数据库中的数据进行访问时需要用到java数据库连接,java数据库连接所在的数据库连接池是采用开源的DBCP连接池,开发人员在代码开发过程中偶尔忘记关闭数据库连接,导致数据库连接泄露,系统在运行一段时间后因为连接池的java数据库连接耗尽,使得整个系统无法使用,需要重启系统才能恢复正常使用。另外,在对数据库的访问量较大时,可能会造成逻辑死循环或线程休眠,也会导致数据库连接泄露。因此需要对泄露的数据库连接进行定位,以便恢复对数据库的正常访问。
目前一般是通过有经验的开发人员对整个代码进行审核,关键字搜索或者代码扫描工具进行辅助分析,逐个排查,找到泄露的数据库连接,然后进行代码修改,将修改的代码再次部署,再次验证。现有的泄露数据库连接定位方式人工成本高,对于一些隐藏较深已泄露数据库连接难以定位,不能及时发现生产环境的已泄露数据库连接,不能快速定位故障。
综上所述,如何有效地解决人工定位已泄露数据库连接成本高,对已泄露数据库连接发现不及时,不能快速定位故障等问题,是目前本领域技术人员急需解决的问题。
发明内容
本发明的目的是提供一种数据库连接泄露的定位方法,该方法较大地降低了人工成本,实现了对已泄露数据库连接的及时发现,较大地提高了故障定位效率;本发明的另一目的是提供一种数据库连接泄露的定位装置、设备及计算机可读存储介质。
为解决上述技术问题,本发明提供如下技术方案:
一种数据库连接泄露的定位方法,包括:
当监测到数据库访问请求时,拦截java数据库连接,得到当前线程堆栈;
将所述当前线程堆栈缓存到线程堆栈数据集中;
当拦截到java数据库连接释放时,从所述线程堆栈数据集中移除所述当前线程堆栈;
对所述线程堆栈数据集中的线程堆栈数量进行监测;
若监测到所述线程堆栈数量在预设时间间隔内均大于预设值,则将所述线程堆栈数据集中缓存时长大于预设时长的线程堆栈对应的java数据库连接定位为已泄露数据库连接。
在本发明的一种具体实施方式中,在将所述线程堆栈数据集中缓存时长大于预设时长的线程堆栈对应的java数据库连接定位为已泄露数据库连接之后,还包括:
对所述已泄露数据库连接进行显示,以使运维人员根据所述已泄露数据库连接进行故障定位及排除操作。
在本发明的一种具体实施方式中,对所述线程堆栈数据集中的线程堆栈数量进行监测,包括:
通过WEB泄露探测程序对所述线程堆栈数据集中的线程堆栈数量进行监测。
在本发明的一种具体实施方式中,在将所述线程堆栈数据集中缓存时长大于预设时长的线程堆栈对应的java数据库连接定位为已泄露数据库连接之后,还包括:
关闭所述WEB泄露探测程序,以停止监测。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广东电网有限责任公司;广东电网有限责任公司管理科学研究院,未经广东电网有限责任公司;广东电网有限责任公司管理科学研究院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910526315.2/2.html,转载请声明来源钻瓜专利网。