这篇文章给大家介绍linux中怎么查看jvm信息,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
1。jmap
,,,这个命令是用来查看当前系统中jvm进程堆转储的情况,包括对象的数量,对象所占内存的大小
,,,使用方式:先使用jps查看进程id
,
,,,使用jmap您:生活、文件=b。地图22467将住进程生成java堆转储快照
,,,
,,,使用jmap堆PID生成java堆的详细信息
,,,使用jmap histo PID生成java堆中对象的相关信息,包含数量以及占用的空间大小
,,,
2。jstat
主要是用来监控jvm堆大小和垃圾回收情况,尤其是gc情况的监控,如果老年代发生完整gc,那么很可能会导致内存泄漏的可能性
可以看到新生代幸存者S0,幸存者S1堆上的空间使用百分比,堆中新生代伊甸园的空间使用百分比,老年代老空间的使用百分比,内存的使用百分比,新生代勇gc的统计次数,新生代gc花费的时间,完整gc的次数、花费的时间,当前进程总的gc时间,这里要注意一点,完整gc很具有代表性,完整gc次数和时间指标很能显示系统性能问题,这两个指标很大,很大程度上说明了程序中有问题,垃圾一直回收不掉
3。jstack
先使用前查看系统中消耗cpu比较多的进程,然后使用顶级PID - h - p来查看当前进程中比较消耗cpu的线程,拿到消耗cpu比较高的线程PID,先转换成16进制的,最后使用jstack PID | grep 16进制的线程id
jstack PID可以用来分析进程情况
关于linux中怎么查看jvm信息就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看的到。