JVM内存观察

内存观察部分一

windows 查看运行Java程序实例

命令: jps

 

jmap

1. jmap -heap pid : 查看内存设置及使用情况

jmap -heap 16276

我主要想查看把400+条的数据字典数据加载到内存里面,和没加载前后对比。先看看加载进去的内存使用情况:

对应解释:

Heap Configuration:
   MinHeapFreeRatio         = 0                                //JVM最小空闲比率 可由-XX:MinHeapFreeRatio=<n>参数设置, jvm heap 在使用率小于 n 时 ,heap 进行收缩
   MaxHeapFreeRatio         = 100                            //JVM最大空闲比率 可由-XX:MaxHeapFreeRatio=<n>参数设置, jvm heap 在使用率大于 n 时 ,heap 进行扩张 
   MaxHeapSize              = 8568963072 (8172.0MB)            //JVM堆的最大大小 可由-XX:MaxHeapSize=<n>参数设置
   NewSize                  = 178782208 (170.5MB)            //JVM新生代的默认大小 可由-XX:NewSize=<n>参数设置
   MaxNewSize               = 2856321024 (2724.0MB)            //JVM新生代的最大大小 可由-XX:MaxNewSize=<n>参数设置
   OldSize                  = 358088704 (341.5MB)            //JVM老生代的默认大小 可由-XX:OldSize=<n>参数设置 
   NewRatio                 = 2                                //新生代:老生代(的大小)=1:2 可由-XX:NewRatio=<n>参数指定New Generation与Old Generation heap size的比例。
   SurvivorRatio            = 8                                //survivor:eden = 1:8,即survivor space是新生代大小的1/(8+2)[因为有两个survivor区域] 可由-XX:SurvivorRatio=<n>参数设置
   MetaspaceSize            = 21807104 (20.796875MB)        //元空间的默认大小,超过此值就会触发Full GC 可由-XX:MetaspaceSize=<n>参数设置
   CompressedClassSpaceSize = 1073741824 (1024.0MB)            //类指针压缩空间的默认大小 可由-XX:CompressedClassSpaceSize=<n>参数设置
   MaxMetaspaceSize         = 17592186044415 MB                //元空间的最大大小 可由-XX:MaxMetaspaceSize=<n>参数设置
   G1HeapRegionSize         = 0 (0.0MB)                        //使用G1垃圾收集器的时候,堆被分割的大小 可由-XX:G1HeapRegionSize=<n>参数设置

Heap Usage:
PS Young Generation
Eden Space:
   capacity = 454557696 (433.5MB)
   used     = 446827288 (426.1277084350586MB)
   free     = 7730408 (7.372291564941406MB)
   98.2993560403826% used
From Space:
   capacity = 22544384 (21.5MB)
   used     = 17157592 (16.362754821777344MB)
   free     = 5386792 (5.137245178222656MB)
   76.10583638035973% used
To Space:
   capacity = 27787264 (26.5MB)
   used     = 0 (0.0MB)
   free     = 27787264 (26.5MB)
   0.0% used
PS Old Generation
   capacity = 331874304 (316.5MB)
   used     = 47505824 (45.305084228515625MB)
   free     = 284368480 (271.1949157714844MB)
   14.314402599846959% used

33231 interned Strings occupying 3973016 bytes.            // 字符数占用内存情况
View Code

下面是没有加载数据字典的jvm内存情况:

可以看出:伊甸区的变化很大。98% -> 20%

posted @ 2020-09-18 11:39  正宗老菜鸟  阅读(296)  评论(0编辑  收藏  举报