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
  • 相关阅读:
    js Worker 线程
    C#接口
    C# 委托
    陆金所面试题
    spark-groupByKey
    spark完整的数据倾斜解决方案
    Spark Streaming
    用SparkSQL构建用户画像
    Spring Cloud底层原理(转载 石杉的架构笔记)
    TCC分布式事务的实现原理(转载 石杉的架构笔记)
  • 原文地址:https://www.cnblogs.com/opaljc/p/6081640.html
Copyright © 2011-2022 走看看