jvm性能监控工具整理

2018-10-31  本文已影响0人  极客123

常见命令1:jstat 虚拟机统计监视工具

功能:

JVM Statistics Monitoring Tool,是用于监视虚拟机运行时状态信息的命令,它可以显示出虚拟机进程中的类装载、内存、垃圾收集、JIT编译等运行数据。

用法:

jstat [options] pid [interval] [count]

参数解析

[options] : 操作参数,一般使用 -gcutil 查看gc情况
VMID : 本地虚拟机进程ID,即当前运行的java进程号
[interval] : 连续输出的时间间隔,单位为秒或者毫秒
[count] : 连续输出的次数,如果缺省打印无数次

对于操作参数具体有哪些: 可以通过命令:jstat -options 获取

jstat1.png

常见命令2:jps 虚拟机进程查看工具

常见参数:
-q: 只输出LVMID
-v:虚拟机进程启动时的参数
-l:输出主类的全名,如果进程是jar包,输出jar的路径


image.png

-m:虚拟机启动时传递给主类main()函数的参数


image.png

关于jinfo

https://www.cnblogs.com/NetKillWill/archive/2017/10/28/jinfo.html
jinfo是jdk自带的命令,可以用来查看正在运行的Java应用程序的扩展参数,甚至支持在运行时,修改部分参数。


关于jmap

主要用于打印指定Java进程(或核心文件、远程调试服务器)的共享对象内存映射或堆内存细节。

jmap -heap pid
https://www.cnblogs.com/kongzhongqijing/articles/3621163.html


配合jmap的jhat命令

很详细:
https://www.cnblogs.com/baihuitestsoftware/articles/6406271.html

Heap Histogram: 堆内对象容量查看
OQL: oql语句查询,详情后续有人问更新。。。 是在堆内查询对象数据的sql语句 语法和sql差不多

但一般不推荐这种方式分析堆内存情况,原因:

  1. 耗费计算机资源相对大
  2. 分析功能简陋,费神

较为推荐:VisualVM、HeapAnalyzer等工具


jstack: java堆栈跟踪工具

上一篇下一篇

猜你喜欢

热点阅读