我的应用程序使用 Tomcat JDBC 连接池和 MySQL DB。
似乎是一个在夜间运行的进程(防病毒扫描?)导致机器上的内存和 CPU 增加,结果来自池的连接一直处于活动状态,直到连接池无法响应任何连接请求。
我收到如下错误:
com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: No operations allowed after statement closed
.Timeout: Pool empty. Unable to fetch a connection in 10 seconds, none available[size:100; busy:97; idle:0; lastwait:10000]. (That's weird, where are the remaining 3?)
查看我正在生成的描述活动连接状态的图表,它是平坦的,直到某个时候它开始增加,直到达到最大值并保持在那里。
我的连接池配置为删除未关闭的连接 ( setRemoveAbandoned = true
)。
你知道我该如何解决这个问题吗?