JVM 常用参数

博客介绍了JVM选项相关信息。以 -X 开头的是非标准选项,不能保证被所有JVM实现支持,后续JDK版本变更不另行通知;以 -XX 开头的是不稳定、不建议使用的选项,后续JDK版本变更也不另行通知。

以 -X 开头的是非标准选项,即不能保证被所有的 JVM 实现所支持,在后续的 JDK 版本中有变更的话不另行通知。
以 -XX开头的是不稳定的、不建议使用的选项,同样的,在后续的 JDK 版本中有变更的话不另行通知。 

参数名称描述
虚拟机内存控制
-Xms<size>设置 Java 堆内存初始值
-Xmx<size>设置 Java 堆内存最大值
-Xmn<size>设置新生代大小
-XX:PermSize设置持久代内存初始值
-XX:MaxPermSize设置持久代内存最大值
 
内存溢出堆内存转储控制
-XX:+HeapDumpOnCtrlBreak交互式获取 Heap Dump:在控制台按下快捷键 [Ctrl + Break] 时,会生成 Heap Dump 文件
-XX:+HeapDumpOnOutOfMemoryError

发生 OutOfMemoryError 时自动生成 Heap Dump 文件

-XX:HeapDumpPath设置 Heap Dump 文件存储路径
 
GC日志相关
-XX:+PrintGCDetails打印 gc 日志(比 -XX:+PrintGC 更详细一些)
-XX:+PrintGCTimeStamps

打印GC发生的时间,格式如:10.298,表示jvm启动以来经过的秒数;

可使用 -XX:+PrintGCTimeStamps 改变时间格式为 2019-03-19T14:06:33.359+0800

-XX:+UseGCLogFileRotation开启GC日志文件滚动策略
-XX:NumberOfGCLogFiles设置日志文件个数,必须大于等于 1;如:-XX:NumberOfGCLogFiles=3,这样设置后,日志文件名样式为:gc.log.0、gc.log.1 ...
-XX:GCLogFileSize

设置滚动日志文件的大小,必须大于8K;当日志文件大于该参数值时,将写入新文件;

如:-XX:GCLogFileSize=1M

-Xloggc指定GC日志输出文件;如:-Xloggc:D:\gc.log
 
查看 jvm 可设置的参数及其值
-XX:+PrintFlagsInitial显示 jvm 所有可设置的参数及其默认值
-XX:+PrintFlagsFinal显示 jvm 所有可设置的参数及其当前值。在输出结果中,覆盖了默认值的参数,使用 := 标识
-XX:+PrintCommandLineFlags

仅显示 jvm 中与默认值不同的参数及其值

 
垃圾收集器相关
-XX:+UseParallelGC虚拟机运行在 Server 模式下的默认值;打开此开关后,使用 Parallel Scavenge + Serial Old 的组合进行垃圾收集
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值