zoukankan      html  css  js  c++  java
  • JMap与JStack

    用JMap和JStack做堆dump和线程dump

    命令

    1. jmap -dump:format=b,file=filename pid
    jmap -dump:format=b,file=jmap0225.bin 18646

    jmap -histo<:live> pid : 查看当期那 heap 的对象

    sudo -u tomcat jmap -histo 1234 | sudo -u tomcat tee /tmp/histo.log

    jmap --heap pid : 查看 heap 结构

    2. jstack pid >> file

    jstack 18646 >> jstackfile

    出现错误

    well-known file is not secure

    需要将执行命令的用户改为启动tomcat线程用户, 如下

    sudo -u tomcat jmap -dump:file=filename pid

    ------

    使用jstack分析步骤

    1. top 查看java进程

    2. top -p <java-pid> -H 查看消耗cpu的线程

    3. <thread-id> 转为 十六进制

    3. sudo -u tomcat jstack <java-pid> | grep -A 10 <0x thread-id> 查看运行状况

  • 相关阅读:
    线程池
    多线程随笔
    注解随笔
    反射机制
    iO流
    FastDFS+docker建立分布式文件系统
    Java之Exception
    Java之String
    手写SpringMvc
    spring中一些常用注解的含义
  • 原文地址:https://www.cnblogs.com/zemliu/p/3568141.html
Copyright © 2011-2022 走看看