• Java VM启动参数笔记


    Java VM启动参数笔记(1)

    打印输出相关参数

    • 打印加载类的详细信息
    verbose
    
    • 打印虚拟机中GC的详细情况:显示最忙和最空闲收集行为发生的时间、收集前后的内存大小、收集需要的时间等
    -verbose:gc
    
    • 虚拟机在出现内存溢出异常时Dump 出当前的内存堆转储快照
    -XX:+HeapDumpOnOutOfMemoryError 
    -XX:HeapDumpPath=/home/admin/logs/java.hprof
    
    • 打印加载类的详细信息
    -XX:+TraceClassLoading
    
    • 详细了解GC中的变化
    -XX:+PrintGCDetails
    
    • 了解垃圾收集发生的时间,自JVM启动后以秒计量
    -XX:PrintGCDateStamps
    
    • GC日志文件的路径
    -Xloggc:/home/admin/logs/gc.log
    

    涉及堆相关的参数

    • server模式下,新生代选择的是并行GC,旧生代选择的是并行GC
    • client模式下,新生代选择的是串行GC,旧生代选择的是串行GC
    -server
    
    • 堆的初始值2g
    -Xms2g
    
    • 堆的最大值2g
    -Xmx2g
    
    • PS:避免在运行时频繁调整Heap的大小,通常-Xms与-Xmx的值设成一样
    • 空余堆内存小于MinHeapFreeRation时,JVM会增大Heap到-Xmx指定的大小
    -XX:MinHeapFreeRation=
    
    • 空余堆内存大于MaxHeapFreeRation时,JVM会减小heap的大小到-Xms指定的大小
    -XX:MaxHeapFreeRation=
    
    • 新生代堆堆大小1g
    -Xmn1g
    
    • 默认32:1:1
    • 新生代的Eden区:From区:To区的比例为8:1:1
    -XX:SurvivorRatio=8
    
    • 永久代大小
    -XX:PermSize=(JDK7)
    
    • 永久代MAX大小
    -XX:MaxPermSize=(JDK7)
    
    • 代替PermSize,元空间大小
    -XX:MetaspaceSize=(JDK8)
    
    • 代替MaxPermSize,元空间最大值
    -XX:MaxMetaspaceSize=(JDK8)
    
  • 相关阅读:
    Asp.net 连接池使用
    关于ASP.NET页面打印技术的总结
    Asp.net页面传值总结
    C#委托
    ASP.NET状态存储管理九大兵器
    JavaScript取ASP.NET中服务器端数据的方法
    DSOFramer.ocx 控件使用
    C#2.0 泛型学习(入门)
    黑马程序员——Java基础String与StringBuilder
    黑马程序员——Java基础语法关键字、常量、变量、运算符
  • 原文地址:https://www.cnblogs.com/mak370/p/14579512.html
Copyright © 2020-2023  润新知