最近公司的某个程序发生假死( java ,springboot ),导出 dump 文件后,发现 tomcat 的 200 个线程全卡在了 getConnecton()获取数据库连接上。 然后查了一下数据库的空闲连接数大概有 5000 ,没有达到 oracle 的 10000 个上限,但是其它的程序也有获取连接慢的情况。但是我的程序就卡死在获取连接上,为什么我的连接池没有返回连接呢??
那是库理论支持的链接吧,你的硬件能跑这么多。照你的说法你程序已经连了 5000 个(一两百我都感觉多),我这半吊子理解是你应该排查你程序为啥链接没释放掉,网络,慢 sql ,大批量导出等,还有个影响可能是其他库的事例影响。