JVM小知识:linux 命令查看jvm堆内存信息

发布时间: 3年前 (2021-06-24)浏览: 854评论: 0

top  -Hp  进程ID,   查看进程下各线程的 cpu等占用情况



查看当前java进程的pid

    pgrep -lf java

    在这里插入图片描述
在这里插入图片描述
2.查看java堆的详细信息

    jmap -heap PID
在这里插入图片描述

图片.png

Heap Configuration:   #堆配置情况 
   MinHeapFreeRatio         = 40  #堆最小使用比例
   MaxHeapFreeRatio         = 70  #堆最大使用比例
   MaxHeapSize              = 8589934592 (8192.0MB)  #堆最大空间
   NewSize                  = 1363144 (1.2999954223632812MB) #新生代初始化大小
   MaxNewSize               = 5152702464 (4914.0MB)          #新生代可使用最大容量大小
   OldSize                  = 5452592 (5.1999969482421875MB) #老生代大小
   NewRatio                 = 2   #新生代比例
   SurvivorRatio            = 8   #新生代与suvivor的占比
   MetaspaceSize            = 21807104 (20.796875MB) #元数据空间初始大小
   CompressedClassSpaceSize = 1073741824 (1024.0MB) #类指针压缩空间大小, 默认为1G
   MaxMetaspaceSize         = 17592186044415 MB  #元数据空间的最大值, 超过此值就会触发 GC溢出( JVM会动态地改变此值)
   G1HeapRegionSize         = 2097152 (2.0MB) #区块的大小

Heap Usage:
G1 Heap:
   regions  = 4096  # G1区块初始化大小
   capacity = 8589934592 (8192.0MB)  #G1区块最大可使用大小
   used     = 1557972768 (1485.7986145019531MB)  #G1区块已使用内存
   free     = 7031961824 (6706.201385498047MB)   #G1区块空闲内存
   18.137190118432045% used     #G1区块使用比例
G1 Young Generation:  #新生代
Eden Space:  #Eden区空间
   regions  = 670
   capacity = 2699034624 (2574.0MB)
   used     = 1405091840 (1340.0MB)
   free     = 1293942784 (1234.0MB)
   52.05905205905206% used
Survivor Space: #Survivor区
   regions  = 3
   capacity = 6291456 (6.0MB)
   used     = 6291456 (6.0MB)
   free     = 0 (0.0MB)
   100.0% used
G1 Old Generation: #老生代
   regions  = 72
   capacity = 1589641216 (1516.0MB)
   used     = 146589472 (139.79861450195312MB)
   free     = 1443051744 (1376.2013854980469MB)
   9.221544492213267% used



3.查看java堆中对象的相关信息,包含数量以及占用的空间大小

	jmap -histo PID

图片.png


查看监控 heap size 和 jvm垃圾回收情况,尤其是gc情况的监控,如果老年代发生full gc,那么很可能会导致内存泄漏的可能性

	jstat -gcutil pid

图片.png

属性参照:

S0: Survivor 0区的空间使用率 Survivor space 0 utilization as a percentage of the space's current capacity.

S1: Survivor 1区的空间使用率 Survivor space 1 utilization as a percentage of the space's current capacity.

E: Eden区的空间使用率 Eden space utilization as a percentage of the space's current capacity.

O: 老年代的空间使用率 Old space utilization as a percentage of the space's current capacity.

M: 元数据的空间使用率 Metaspace utilization as a percentage of the space's current capacity.

CCS: 类指针压缩空间使用率 Compressed class space utilization as a percentage.

YGC: 新生代GC次数 Number of young generation GC events.

YGCT: 新生代GC总时长(从应用程序启动到采样时年轻代中gc所用时间 单位:s)
      Young generation garbage collection time.

FGC: Full GC次数 Number of full GC events.

FGCT: Full GC总时长(从应用程序启动到采样时old代(全gc)gc所用时间 单位:s)
      Full garbage collection time.

GCT: 总共的GC时长 (从应用程序启动到采样时gc用的总时间 单位:s)Total garbage collection time.


注:full gc很具有代表性,full gc次数 和时间 指标很能显示系统性能问题,这两个指标很大,很大程度上说明了程序中有问题,垃圾一直回收不掉
————————————————

原文链接:https://blog.csdn.net/weixin_43945983/article/details/90174751


标签:

上一篇: maven项目打包成WAR包提示:程序包***不存在的解决方案
下一篇: jvm参数说明

相关文章暂无相关
评论列表暂无评论
发表评论
验证码

«   2024年4月   »
1234567
891011121314
15161718192021
22232425262728
2930
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
    文章归档
    网站收藏
    友情链接
    • RainbowSoft Studio Z-Blog
    • 订阅本站的 RSS 2.0 新闻聚合
    ︿
    Top