zoukankan      html  css  js  c++  java
  • tomcat内存泄漏存入dump文件

      很多tomcat进程退出(或者进程假死),都是由于频繁的抛出OutOfMemeoryError导致的。

      为了让tomcat退出前或者发生OutOfMemeoryError时自动dump堆栈信息,方便事后排查问题,我们可以做如下操作:

      1、 在tomcat启动参数中加入两个参数 -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/export/home/tomcat/domains/server2/oom.hprof

      2、 重启tomcat

      参数说明

      (1)-XX:+HeapDumpOnOutOfMemoryError 表示当JVM发生OOM时,自动生成DUMP文件。

      (2)-XX:HeapDumpPath=存储文件/目录 表示生成DUMP文件的路径

    //***********************************     完美分割线    *********************************************//

    -XX:+HeapDumpOnOutOfMemoryError

    该配置会把快照保存在user.dir中,比如你用tomcat启动,那应该是在tomcat的bin目录下

    当然,也可以通过XX:HeapDumpPath=./java_pid.hprof来显示指定路径

     此外,OnOutOfMemoryError参数允许用户指定当出现oom时,指定某个脚本来完成一些动作,比如邮件知会。。。

    $ java -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp/heapdump.hprof -XX:OnOutOfMemoryError ="sh ~/cleanup.sh" MyApp
  • 相关阅读:
    mysql函数操作(5)
    mysql函数操作(4)
    mysql函数操作(3)
    mysql函数操作(2)
    mysql函数操作
    绑定列
    iOS-Xcode解决【workspace integrity couldn't load project'】
    iOS-常用的两个弹簧动画pop
    iOS-实现后台长时间运行
    iOS-xcconfig环境变量那些事(配置环境的配置)
  • 原文地址:https://www.cnblogs.com/opaljc/p/6081640.html
Copyright © 2011-2022 走看看