CSDNHce
csdnHce
2019-04-02 14:11
采纳率: 100%
浏览 526
已采纳

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

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

图片说明

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

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • qq_41623714
    qq_41623714 2019-04-04 22:12
    已采纳

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

    点赞 评论
  • weixin_43512684
    weixin_43512684 2019-04-02 14:58

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

    点赞 评论

相关推荐