美文网首页
jvm 常用命令

jvm 常用命令

作者: 探戏者 | 来源:发表于2018-07-26 15:18 被阅读0次

堆内存

image.png
  • jmap -heap pid


    image.png

图中重点信息讲述:默认的垃圾回收算法为Parallel GC ,共用了2个线程进行垃圾回收检查。堆相关信息的配置和使用率。
要注意的是在使用CMS GC 情况下,jmap -heap的执行有可能会导致JAVA 进程挂起

  • jmap -histo pid > jmaptemp.log


    image.png

使用jmap -histo[:live] pid查看堆内存中的对象数目、大小统计直方图。如果带上live则只统计活对象,jvm进行Full GC 后,进行统计。
class name是对象类型,说明如下:

B  byte
C  char
D  double
F  float
I  int
J  long
Z  boolean
[  数组,如[I表示int[]
[L+类名 其他对象
  • jmap -dump:format=b,file=文件名 [pid]
    导出Dump文件,可以用相关工具(jhat/jvisualvm/mat)进行分析。-dump:live会触发Full GC后转存Dump。
    需要注意的是,上面的导出快照命令,在1G左右JVM内存的情况下,要大概等待1分钟左右的时间,且执行时会使JVM暂停执行,因此不要在正式运行系统的高峰期或关键时刻使用。

垃圾回收

  • jstat -gcutil pid


    image.png
  1. S0 — Heap上的 Survivor space 0 区已使用空间的百分比
  2. S1 — Heap上的 Survivor space 1 区已使用空间的百分比
  3. E — Heap上的 Eden space 区已使用空间的百分比
  4. O — Heap上的 Old space 区已使用空间的百分比
  5. P — Perm space 区已使用空间的百分比
  6. YGC — 从应用程序启动到采样时发生 Young GC 的次数
  7. YGCT– 从应用程序启动到采样时 Young GC 所用的时间(单位秒)
  8. FGC — 从应用程序启动到采样时发生 Full GC 的次数
  9. FGCT– 从应用程序启动到采样时 Full GC 所用的时间(单位秒)
  10. GCT — 从应用程序启动到采样时用于垃圾回收的总时间(单位秒)

进程监控

  • jstack pid > jstacktemp.log


    image.png
    1. 线程名称:http-bio-8091-exec-71
    2. 线程类型:daemon
    3. 优先级: 6,默认是5
    4. jvm线程id:tid=0x0000000012561000,jvm内部线程的唯一标识(通过java.lang.Thread.getId()获取,通常用自增方式实现。)
    5. 对应系统线程id(NativeThread ID):nid=0x343d0,和top命令查看的线程pid对应,不过一个是10进制,一个是16进制。(通过命令:top -H -p pid,可以查看该进程的所有线程信息)
    6. 线程状态:waiting on condition
    7. 起始栈地址:[0x000000001cd2f000]
    8. Java thread statck trace:是上面at行的信息。到目前为止这是最重要的数据,Java stack trace提供了大部分信息来精确定位问题根源。

相关文章

  • jvm常用:命令 、参数

    jvm 常用命令: java -XX:+PrintFlagsFinal -version 查看所有jvm参数 如...

  • 阿尔萨斯-jvm

    Jvm jvm 检测工具 阿尔萨斯(Arthas) 安装 监控命令常用命令 dashboard(仪表盘) Thre...

  • JVM内存分析

    JVM常用命令 jps 查看所有的java进程ID jinfo 实时查看和调整JVM配置参数查看jinfo -fl...

  • JVM命令与调试工具

    JVM常用命令行命令 jps命令:查看系统中有哪些进程使用jvm虚拟机 扩展参数:jps -l;jps -mlv;...

  • jvm 调优 和gc 算法

    jvm 常用命令 : jmap jstat jinfo jps gc 算法 串行垃圾回收器(Serial ...

  • 【死磕JVM】什么是JVM调优?

    想要学习JVM调优,我们必须提前知道他们的一些参数,这样才方便我们更好的去使用他们 JVM常用命令行参数 JVM的...

  • FGC排查基础知识

    排查思路及常用命令 1、查看java进程 ps -ef | grep java jps 2、检查JVM配置 ps ...

  • JVM调优

    前言 本系列系统的介绍了jvm调优及相关工具的使用。笔者会先介绍jvm的基本概念,然后介绍常用命令、常用工具,最后...

  • JVM常用命令

    JVM常用命令: jps 显示当前运行的java进程以及相关参数 jps参数: 备注:也可以使用ps aux | ...

  • Java学习路线大全

    Java基础 一:Java开发介绍 1. DOS常用命令 2. JVM、JRE、JDK之间的关系 3. Java开...

网友评论

      本文标题:jvm 常用命令

      本文链接:https://www.haomeiwen.com/subject/djebmftx.html