进阶学习(4.2) JVM 常用配置参数, GC 参数

-XX:+PrintGC 打印GC执行信息

-XX:+PrintGCDetails 打印堆使用信息

   PSYoungGen 新生代

        eden 伊甸区

        from 幸存区

        to 幸存区

   ParOldGen 老年代

   Metaspace 元空间, 就是永久代, 1,8 以后使用的本地内存

-Xloggc:log/gc.log 使用外部文件记录CG

-XX:+TraceClassLoading 记录JVM加载的类

-Xmx20m 配置堆最大大小, Max Max

-Xms20m 配置堆最小大小, Max small

-Mms2m 配置新生代大小

-XX:NewRatio=4 新生代占堆大小比例

-XX:SurvivorRatio=6 幸存区占新生代大小的多少, 幸存区是要折半的分为to 和 from

-XX:+HeapDumpOnOutOfMemoryError 堆内存溢出跳出错误

-XX:+HeapDumpPath=log/oom.log OOM ouu of memory, 内存溢出

 

GC选择

-XX:+UseSerialGC 串行GC, STW (stop the world), 最古老的GC, 最稳定

-XX:+UseParNewGC 并行GC, 针对新生代, 老年代串行, STW

-XX:ParallelGCThreads 并行GC, 线程数设置

-XX:+UseParallelGC 并行GC, 和UseParNewGC 类似, STW , 同环境下优于

-XX:+UseParallelOldGC 并行GC,STW, 新生代和老年代都并行

-XX:+UseConcMarkSweepGC 著名的CMS, 并行GC, 不对新生代, 搭配ParNewGC使用, 初始标记和修正标记是STW 的, 初始标记 -> 并行标记 -> 修正标记 -> 清除标记

java -XX:+PrintCommandLineFlags -version 查看默认GC,

 

你可能感兴趣的:(JVM,学习资料,JAVA,jvm)