JVM常用参数和命令
JVM常用参数
参数 1 | 含义 2 |
---|---|
-Xms | 初始堆大小 |
-Xmx | 最大堆空间 |
-Xmn | 设置新生代大小 |
-XX:SurvivorRatio | 设置新生代eden空间和from/to空间的比例关系 |
-XX:PermSize | 方法区初始大小 |
--XX:MaxPermSize | 方法区最大大小 |
-XX:MetaspaceSize | 元空间GC阈值(JDK1.8) |
-XX:MaxMetaspaceSize | 最大元空间大小(JDK1.8) |
-Xss | 栈大小 |
-XX:MaxDirectMemorySize | 直接内存大小,默认为最大堆空间 |
JVM常用命令
jps 获取java进程的pid
jmap - heap PID 查看推内存情况 会生成一个堆内存快照
jstat -gcutil PID 监控各个区域内存占用比例
Sun JDK监控和故障处理命令有jps jstat jmap jhat jstack jinfo
jps,JVM Process Status Tool,显示指定系统内所有的HotSpot虚拟机进程。
jstat,JVM statistics Monitoring是用于监视虚拟机运行时状态信息的命令,它可以显示出虚拟机进程中的类装载、内存、垃圾收集、JIT编译等运行数据。
jmap,JVM Memory Map命令用于生成heap dump文件
jhat,JVM Heap Analysis Tool命令是与jmap搭配使用,用来分析jmap生成的dump,jhat内置了一个微型的HTTP/HTML服务器,生成dump的分析结果后,可以在浏览器中查看
jstack,用于生成java虚拟机当前时刻的线程快照。
jinfo,JVM Configuration info 这个命令作用是实时查看和调整虚拟机运行参数。
1、 jstat -gcutil pid
统计gc信息统计。
[root@tx-oss-web-01-16-100 jvm-monitor]# jstat -gcutil 8733
S0 S1 E O P YGC YGCT FGC FGCT GCT
82.43 0.00 75.67 97.91 99.57 23066 152.726 77 96.956 249.681
2、 jstat -gc pid
可以显示gc的信息,查看gc的次数,及时间。其中最后五项,分别是young gc的次数,young gc的时间,full gc的次数,full gc的时间,gc的总时间。
[root@tx-oss-web-01-16-100 jvm-monitor]# jstat -gc 8733
S0C S1C S0U S1U EC EU OC OU PC PU YGC YGCT FGC FGCT GCT
2432.0 2432.0 0.0 1616.0 169856.0 127544.6 488384.0 478753.1 126336.0 125788.6 23069 152.747 77 96.956 249.703
3、 jstat -gccapacity pid
可以显示,VM内存中三代(young,old,perm)对象的使用和占用大小,如:PGCMN显示的是最小perm的内存使用量,PGCMX显示的是perm的内存最大使用量,PGC是当前新生成的perm内存占用量,PC是但前perm内存占用量。
其他的可以根据这个类推, OC是old内纯的占用量。
[root@tx-oss-web-01-16-100 jvm-monitor]# jstat -gccapacity 8733
NGCMN NGCMX NGC S0C S1C EC OGCMN OGCMX OGC OC PGCMN PGCMX PGC PC YGC FGC
174720.0 1048576.0 174720.0 2368.0 2368.0 169984.0 349568.0 2097152.0 488384.0 488384.0 21248.0 1048576.0 126336.0 126336.0 23045 77
4、jstat -gcnew pid
年轻代对象的信息。
S0C S1C S0U S1U TT MTT DSS EC EU YGC YGCT
2240.0 2240.0 0.0 1568.0 14 15 2240.0 170176.0 89972.2 23083 152.845
5、jstat -gcnewcapacity pid
年轻代对象的信息及其占用量。
[root@tx-oss-web-01-16-100 jvm-monitor]# jstat -gcnewcapacity 8733
NGCMN NGCMX NGC S0CMX S0C S1CMX S1C ECMX EC YGC FGC
174720.0 1048576.0 174720.0 1984.0 349504.0 349504.0 2176.0 1048448.0 170368.0 23102 77
6、jstat -gcold pid
old代对象的信息。
[root@tx-oss-web-01-16-100 jvm-monitor]# jstat -gcold 8733
PC PU OC OU YGC FGC FGCT GCT
126336.0 125788.6 488384.0 482489.2 23105 77 96.956 249.961
7、jstat -gcoldcapacity pid
old代对象的信息及其占用量。
[root@tx-oss-web-01-16-100 jvm-monitor]# jstat -gcoldcapacity 8733
OGCMN OGCMX OGC OC YGC FGC FGCT GCT
349568.0 2097152.0 488384.0 488384.0 23109 77 96.956 249.988
- 本文标签: JVM JVM常用参数和命令
- 本文链接: http://www.ityoulove.com/article/31
- 版权声明: 本文由崔健宇原创发布,转载请遵循《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》许可协议授权