【发布时间】:2012-07-24 16:29:00
【问题描述】:
我的 Tomcat 中的一个巨大的 web 应用程序有时会开始使用过多的 DBCP 连接,从而导致问题。
为了进行调查,我想在每个时间点准确地知道哪个线程/方法正在持有池的连接。不需要实时,事后分析即可。
我一直在寻找这样的DBCP监控工具,没有成功,所以我准备写我的。
(如果有兴趣我可以将它开源) p>
这是我的计划:
- 修改PoolingDataSource.getConnection记录“
DBCP+1 <thread-id>” - 修改DelegatingConnection.close以记录“
DBCP-1 <thread-id>” - 编写一个小脚本来生成这个简单的 CSV 用于可视化:
问题:
我是否遗漏了一些使该想法无效的 Commons-DBCP 1.4 概念?
还是我在重新发明轮子?
【问题讨论】:
标签: monitoring apache-commons-dbcp