美文网首页
JVM---jvm的启动参数

JVM---jvm的启动参数

作者: 琦玉工程师 | 来源:发表于2019-03-05 15:14 被阅读0次



    启动参数类别

    标准参数(Standard Options

    非标参数(Non-Standard Options

    高级运行参数(Advanced Runtime Options

    高级即时编译器参数(Advanced JIT Compiler Options

    高级应用服务辅助参数(Advanced Serviceability Options

    高级垃圾收集器参数(Advanced Garbage Collection Options


    标准参数

    所有版本jvm都实现了的通用参数

    -client    选择HotSpot Client VM启动

    -server   选择HotSpot Server VM启动

    -verbose:class   展示所有已加载的class信息

    -verbose:gc   展示所有垃圾收集事件信息

    -verbose:jni  展示所有活跃的本地方法或java本地接口

    非标参数

    对于HotSpot Virtual Machine的特殊参数(-X)

    -Xmnsize  年轻带内存初始化最大内存设置  例如:-Xmn256m -Xmn256k -Xmn256

                    -XX:NewSize  年轻带初始化内存设置

                    -XX:MaxNewSize  年轻带最大内存设置

    -Xmssize   堆(heap)区空间内存设置,为1024的倍数且大于1Mb,例如:-Xms6291456 -Xms6291456k -Xms6291456m

    -Xmxsize   虚拟机可用最大内存空间,为1024的倍数且大于2Mb,例如:   -Xmx80m-Xmx2048  -Xmx2048k  

                    -XX:MaxHeapSize  堆最大内存设置(等价)

    -Xsssize   栈内存大小设置,例如:  -Xss1m  -Xss1024  -Xss1k 

                    -XX:ThreadStackSize=1m-XX:ThreadStackSize=1024k-XX:ThreadStackSize=1048576(等价)  

    高级运行参数

    控制虚拟机运行时行为

    -XX:ErrorFile=filename  运行时错误日志记录 ,例如:  -XX:ErrorFile=./hs_err_pid%p.log

    高级即时编译器参数

    动态即时编译控制参数

    -XX:CodeCacheMinimumFreeSpace=size  即时编译所需最小空闲空间,例如:-XX:CodeCacheMinimumFreeSpace=1024m

    高级应用服务辅助参数

    -XX:+HeapDumpOnOutOfMemoryError  oom时dump错误信息,指定目录:-XX:HeapDumpPath=path

    -XX:+PrintConcurrentLocks   Control+Break事件打印juc锁信息,效果同 jstack

    高级垃圾收集器参数

    垃圾收集调控参数

    -XX:+CMSClassUnloadingEnabled  使用cms收集器时允许卸载class

    -XX:ConcGCThreads=threads   设置并发垃圾收集线程数  例如:-XX:ConcGCThreads=2 

    -XX:+DisableExplicitGC   禁用用户GC指令 System.gc(). 

    -XX:+ExplicitGCInvokesConcurrent   System.gc().执行并发GC,同UseConcMarkSweepGC 搭配

    -XX:+ExplicitGCInvokesConcurrentAndUnloadsClasses   System.gc().执行并发GC ,GC期间卸载未使用class

    -XX:InitialHeapSize=size   堆初始化空间大小,为0时大小默认为新生代和老年代分配的内存总和

    -XX:InitialSurvivorRatio=ratio  存活区比率:公式S=Y/(R+2)

    -XX:InitiatingHeapOccupancyPercent=percent   触发GC的堆使用百分比上限

    -XX:MaxGCPauseMillis=time   理想最大GC安全停顿点停顿时间(目标值)

    -XX:MaxMetaspaceSize=size  元空间(方法区实现1.8之前永久带)的最大空间

    -XX:MetaspaceSize=size 元空间GC触发空间大小阈值

    -XX:NewRatio=ratio   Y/O 分配比率

    -XX:+PrintGCApplicationStoppedTime打印发生停顿时安全停顿持续时间

    -XX:+PrintGCDetails 打印GC详细信息

    -XX:SurvivorRatio=ratio  E/S 分配比率

    -XX:TLABSize=size  线程本地分配缓冲区大小

    -XX:+UseTLAB  年轻代开启线程分配缓存

    相关文章

      网友评论

          本文标题:JVM---jvm的启动参数

          本文链接:https://www.haomeiwen.com/subject/nhbnuqtx.html