最后
经过日积月累, 以下是小编归纳整理的深入了解Java虚拟机文档,希望可以帮助大家过关斩将顺利通过面试。
由于整个文档比较全面,内容比较多,篇幅不允许,下面以截图方式展示 。
由于篇幅限制,文档的详解资料太全面,细节内容太多,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!
public static void main(String[] args) {
List d = new ArrayList();
while(true){
d.add(new GCTest());
}
}
}
GCTest类的执行时,JVM参数配置:
-Xms1m
-Xmx1m
-XX:+PrintGCDetails
-XX:+PrintGCTimeStamps
-XX:+PrintGCDateStamps
执行后控制台输出如下图,准备下一步详细分析GC日志。
1、堆空间参数
-
-Xms:初始堆大小 默认物理内存的1/64(小于1GB)空余堆大小小于40%时,JVM就会增大堆直到-Xmx的最大限制
-
-Xmx:最大堆大小 默认物理内存的1/4(小于1GB)空余堆大小大于70%时,JVM就会减少堆直到-Xms的最小限制
-
-Xmn:指定新生代的大小(Eden + Survior from + Survior to)的大小,增大新生代的大小,老年代的大小将被减小,sun 官方推荐 新生代的大小:堆 = 3 : 8
-
-XX:NewSize=512k:设置新生代大小
-
-XX:MaxNewSize=512k 设置新生代的最大值-Xmn 相当于设同时设置 NewSize=MaxNewSize
-
-XX:NewRation=4老年代:新生代 = 4:1,即 old:(Eden + Survivor from + Survivor to) ,则说明新生代为整个堆区的 1/5
-
-XX:SurvivorRation=8 设置 Eden 区和 Survivor。
默认值为8;即:Eden:Survivor=8:1 ==> Eden:Survivor from:Survivor to = 8:1:1
若值为3,即:Eden:Survivor=8:1 ==> Eden:Survivor from:Survivor to = 3:1:1
-
-XX:+HeapDumpOnOutOfMemoryError:表示当JVM发生OOM时,自动生成DUMP文件。
-
-XX:HeapDumpPath:表示生成DUMP文件的路径,也可以指定文件名称。
-
-XX:MaxTenuringThreshold=15:设置将新生代对象转到老年代时需要经过多少次垃圾回收
2、元数据空间参数
-
-XX:PermSize:设置方法区大小(1.8以前的设置)
-
-XX:MaxPermSize: 设置方法区的最大值(1.8以前的设置)
1.8 之前可以理解为 永久区(PerSize,MaxPerSize)。
1.8 之后使用 元数据区 取代。(MaxMetaspaceSize)。
- -XX:MaxMetaspaceSize=128k 来进行设置
3、栈空间参数
- -Xss128k 栈内存的大小
4、Gc回收参数
-
-XX:+PrintGC 输出GC日志
-
-XX:+PrintGCDetails 输出GC的详细日志
-
-XX:+PrintGCTimeStamps 输出GC的时间戳(以基准时间的形式)
-
-XX:+PrintGCDateStamps 输出GC的时间戳(以日期的形式,如 2018-06-19T21:53:59.230+0800)
-
-XX:+PrintHeapAtGC 在进行GC的前后打印出堆的信息
-
-Xloggc:…/logs/gc.log 日志文件的输出路径
5、垃圾收集器参数
| 参数 | 描述 |
| — | — |
| UseSerialGC | 虚拟机运行在Client模式下的默认值,打开此开关后,使用Serial + Serial Old的收集器组合进行内存回收 |
| UseParNewGC | 打开此开关后,使用ParNew + Serial Old的收集器组合进行内存回收 |
| UseConcMarkSweepGC | 打开此开关后,使用ParNew+ CMS + Serial Old的收集器组合进行内存回收。Serial Old收集器将作为CMS收集器出现Concurrent Mode Failure失败后的后备收集器使用 |
| UseParallelGC | 虚拟机运行在Server模式下的默认值,打开此开关后,使用Parallel Scavenge + Serial Old (PS Mark Sweep)的收集器组合进行内存回收 |
最后
终极手撕架构师的学习笔记:分布式+微服务+开源框架+性能优化
新讲解视频+实战项目源码】](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)收录**