目前线上有个 Java 项目,服务器刚刚启动连接数正常,一两天之后,连接数达到几万。 使用 ps -eLf | wc -l 查看的 有没有好的办法可以排查这个问题呢,是个老项目。感觉是资源没有释放,但是没有好的排查方案,感谢各位大佬。
1
leonme 2021-09-29 18:35:25 +08:00 via iPhone
业务代码逻辑-业务 log - gc log - 系统资源信息( cpu/mem/disk/thread 等),无非这几个方面结合看,但是深刻理解业务逻辑代码最重要
|
2
shanghai1943 2021-09-29 18:35:48 +08:00
线程 dump 一下看呢
|
3
wellsc 2021-09-29 18:41:49 +08:00 via iPhone
这标题……查看链接数不是用 netstat 和 losf 的嘛?网上一搜一大把
|
4
fengpan567 2021-09-30 11:03:36 +08:00
netstat -anp
|
5
yidinghe 2021-09-30 11:22:09 +08:00
假设楼主说的是数据库连接。
一个办法是从数据库服务端看,这些没有释放的连接最后执行的是什么 SQL,反推定位到代码位置。 |
6
Chinsung 2021-09-30 17:12:06 +08:00
连接数?这个连接数是哪里看到的?监控打印的数据库 Redis 等连接池的信息吗?还是 tomcat 容器的连接数信息?
具体是体现在线程数飙升吗? jstack 看一下哪些线程最多。 |