JDK性能监控工具

JPS

查看Java进程

jps

// 显示传递给JVM的参数
jps -v 

// 显示传递给main方法的参数
jps -m

// 显示应用程序主类的完整包名或应用程序 JAR 文件的完整路径名。
jps -l

jstat

用于观察Java应用程序运行时相关信息的工具。

// 显示有关垃圾收集堆行为的统计信息。
-gc

// 显示JVM中各分区的容量和使用情况
-gccapacity 

// 显示有关垃圾收集统计信息的摘要,以及上次和当前垃圾收集事件的原因。
-gccause

// 显示新生代的统计信息
-gcnew

// 显示有关新生代大小及其相应空间的统计信息。
-gcnewcapacity

// 显示有关老年代行为的统计信息和元空间统计信息。
-gcold

// 显示有关老年代大小的统计信息
-gcoldcapacity

// 显示有关元空间大小的统计信息
-gcmetacapacity
       
// 显示有关垃圾收集统计信息的摘要。
-gcutil
// 显示-gcutil的输出,以250ms的间隔采集7个样本
jstat -gcutil 21891 250 7
 S0     S1     E      O      M     CCS    YGC     YGCT    FGC    FGCT     GCT
 0.00  97.02  70.31  66.80  95.52  89.14      7    0.300     0    0.000    0.300
 0.00  97.02  86.23  66.80  95.52  89.14      7    0.300     0    0.000    0.300
 0.00  97.02  96.53  66.80  95.52  89.14      7    0.300     0    0.000    0.300
91.03   0.00   1.98  68.19  95.89  91.24      8    0.378     0    0.000    0.378
91.03   0.00  15.82  68.19  95.89  91.24      8    0.378     0    0.000    0.378
91.03   0.00  17.80  68.19  95.89  91.24      8    0.378     0    0.000    0.378

jinfo

jinfo命令可以用来查看正在运行的Java运行程序的扩展参数。

jinfo <option> <pid>

[root@node2 ~]# jinfo -flags 1673
Attaching to process ID 1673, please wait...
Debugger attached successfully.
Server compiler detected.
JVM version is 25.231-b11
Non-default VM flags: -XX:CICompilerCount=2 -XX:CMSInitiatingOccupancyFraction=75 -XX:+DisableExplicitGC -XX:GCLogFileSize=20971520 -XX:+HeapDumpOnOutOfMemoryError -XX:InitialHeapSize=268435456 -XX:MaxHeapSize=1073741824 -XX:MaxNewSize=174456832 -XX:MaxTenuringThreshold=6 -XX:MinHeapDeltaBytes=196608 -XX:NewSize=174456832 -XX:NumberOfGCLogFiles=25 -XX:OldPLABSize=16 -XX:OldSize=93978624 -XX:+PrintGC -XX:+PrintGCDateStamps -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+UseCMSInitiatingOccupancyOnly -XX:+UseCompressedClassPointers -XX:+UseCompressedOops -XX:+UseConcMarkSweepGC -XX:+UseFastUnorderedTimeStamps -XX:+UseGCLogFileRotation -XX:+UseParNewGC 
Command line:  -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=25 -XX:GCLogFileSize=20m -XX:+PrintGCDateStamps -XX:+PrintGCDetails -Xloggc:/var/log/elasticsearch/es-gc-%t.log -Xms256m -Xmx1g -Djava.awt.headless=true -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -XX:+HeapDumpOnOutOfMemoryError -XX:+DisableExplicitGC -Dfile.encoding=UTF-8 -Djna.nosys=true -Des.path.home=/usr/share/elasticsearch
[root@node2 ~]# 

jmap

jmap是一个多功能的命令,可以生成Java程序的堆Dump文件,也可以查看堆内对象实例的统计信息。

// 生成Java程序的堆Dump文件
jmap -dump:format=b,file=filename

// 查看堆内对象实例的统计信息
[root@node2 ~]# jmap -heap 21192
Attaching to process ID 21192, please wait...
Debugger attached successfully.
Server compiler detected.
JVM version is 25.231-b11

using thread-local object allocation.
Parallel GC with 2 thread(s)

Heap Configuration:
   MinHeapFreeRatio         = 0
   MaxHeapFreeRatio         = 100
   MaxHeapSize              = 1610612736 (1536.0MB)
   NewSize                  = 42991616 (41.0MB)
   MaxNewSize               = 536870912 (512.0MB)
   OldSize                  = 87031808 (83.0MB)
   NewRatio                 = 2
   SurvivorRatio            = 8
   MetaspaceSize            = 21807104 (20.796875MB)
   CompressedClassSpaceSize = 1073741824 (1024.0MB)
   MaxMetaspaceSize         = 17592186044415 MB
   G1HeapRegionSize         = 0 (0.0MB)

Heap Usage:
PS Young Generation
Eden Space:
   capacity = 119013376 (113.5MB)
   used     = 81125448 (77.36725616455078MB)
   free     = 37887928 (36.13274383544922MB)
   68.16498340489056% used
From Space:
   capacity = 3145728 (3.0MB)
   used     = 2714480 (2.5887298583984375MB)
   free     = 431248 (0.4112701416015625MB)
   86.29099527994792% used
To Space:
   capacity = 30932992 (29.5MB)
   used     = 0 (0.0MB)
   free     = 30932992 (29.5MB)
   0.0% used
PS Old Generation
   capacity = 282591232 (269.5MB)
   used     = 181341504 (172.94073486328125MB)
   free     = 101249728 (96.55926513671875MB)
   64.17095913294295% used

72136 interned Strings occupying 6908344 bytes.

jstack

jstack用于导出Java应用程序的线程堆栈。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值