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

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

问题描述:

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

图片说明

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

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

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