centos下,tomcat7关闭后报错内存泄露,并开启多个java进程,不知怎么处理

每次发布项目的时候,tomcat执行shutdown.sh之后,都会打印以下日志

图片说明

并且会在linux中开启几个java进程,占了很多的内存,找了很久的原因,都不知道怎么处理,希望大佬帮忙解答一下。

2个回答

监控jvm内存,jstat -gcutil PID 命令监控下是不是内存回收的问题,看下GC是否正常。如果GC不正常,把线程dump下来分析。
命令map -dump:live,format=b,file=heap.bin PID,dump下来的文件可以借助MemoryAnalyzer工具去分析,找到最大的引用对象
去查代码,看下是不是有对象一直在申请内存。

最快捷的方法就是使用kill -9 pid ,直接杀掉对应的进程id;

CSDNHce
csdnHce 现在我每次都是杀掉全部的java进程,不过这也不是好的解决办法,而且我我配置的关闭线程池监听器貌似没有运行
一年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问