JVM参数配置

这篇博客详细介绍了在JDK 1.8中针对JVM的内存配置,包括初始堆内存、最大堆内存、年轻代大小以及非堆区的设置。重点讲解了CMS并发标记清除收集器和G1垃圾收集器的使用,并提供了详细的GC日志输出配置,旨在优化内存管理和提升系统性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

JDK 1.8

-D[Standalone]
# Java 程序是否优先使用 IPv4 套接字
-Djava.net.preferIPv4Stack=true
# 影响文件内容
-Dfile.encoding=UTF-8
# 影响文件名的创建
-Dsun.jnu.encoding=UTF-8
# 设置JVM初始堆内存
-Xms20960m
# 设置JVM最大堆内存
-Xmx20960m
# 设置年轻代大小
-Xmn1536m
# 表示对非堆区分配的内存的最大上限(持久化内存)
-XX:MaxPermSize=512m
# 表示输出虚拟机中GC的详细情况
-verbose:gc
# 设置年轻代中Eden区与Survivor区的比值
# Survivor:Eden=2:4,1个Survivor区占整个年轻代大小的1/6
-XX:SurvivorRatio=4
# 并发标记清除(CMS)收集器 
-XX:+UseConcMarkSweepGC
#(CMS)收集器其他配置 
-XX:+UseCMSCompactAtFullCollection
-XX:+CMSClassUnloadingEnabled
-XX:+UseCMSInitiatingOccupancyOnly
-XX:CMSInitiatingOccupancyFraction=80
# 打印GC详细信息
-XX:+PrintGCDetails
# 打印CG发生的时间戳
-XX:+PrintGCTimeStamps
# 每次GC后打印堆信息
-XX:+PrintHeapAtGC
# 记录的是系统时间
-XX:+PrintGCDateStamps
# 控制日志文件的循环数量和文件大小
-XX:+UseGCLogFileRotation
-XX:NumberOfGCLogFiles=10
-XX:GCLogFileSize=100M
# 将垃圾回收信息输出文件路径
-Xloggc:/opt/log/verbose.gc
# 当堆内存空间溢出时输出堆的内存快照 
-XX:+HeapDumpOnOutOfMemoryError
# 堆的内存快照文件路径
-XX:HeapDumpPath=/opt/log/
# Headless模式是在缺少显示屏、键盘或者鼠标是的系统配置
-Djava.awt.headless=true
# 关闭Java字节码验证,从而加快了类装入的速度
-Xverify:none


jdk 1.7

-D[Standalone]
-XX:MaxPermSize=512m
-Djava.net.preferIPv4Stack=true
-Dfile.encoding=UTF-8
-Dsun.jnu.encoding=UTF-8
-verbose:gc
-XX:+PrintGCDetails
-XX:+PrintGCTimeStamps
-XX:+PrintHeapAtGC
-XX:+PrintGCDateStamps
-Xloggc:/opt/log/verbose.gc
-XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=/opt/log/
-Djava.awt.headless=true
-XX:+UseGCLogFileRotation
-XX:NumberOfGCLogFiles=10
-XX:GCLogFileSize=20M
-Xms20480m
-Xmx20480m
# G1垃圾收集器
-XX:+UseG1GC
-Xverify:none


jdk 1.7


-D[Standalone]
-XX:PermSize=512m
-XX:MaxPermSize=512m
-Djava.net.preferIPv4Stack=true
-Dfile.encoding=UTF-8
-Dsun.jnu.encoding=UTF-8
-verbose:gc
-XX:+PrintGCDetails
-XX:+PrintGCTimeStamps
-XX:+PrintHeapAtGC
-XX:+PrintGCDateStamps
-Xloggc:/opt/log/verbose.gc
-XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=/opt/log/
-Djava.awt.headless=true
-Dcom.ibm.mq.cfg.TCP.Connect_Timeout=20
-XX:+UseGCLogFileRotation
-XX:NumberOfGCLogFiles=10
-XX:GCLogFileSize=20M
-Xms2048m
-Xmx2048m
# 并发标记清除(CMS)收集器 
-XX:+UseConcMarkSweepGC
# 设置年轻代为多线程收集。可与CMS收集同时使用
-XX:+UseParNewGC
# 启用并行Remark,如果Remark阶段暂停时间长,可以启用
-XX:+CMSParallelRemarkEnabled
-Xverify:none
-javaagent:/opt/jboss/ares/agent/ares-agent.core-0.0.1.jar
-Dorg.jboss.boot.log.file=/opt/jboss/standalone/log/server.log
-Dlogging.configuration=file:/opt/jboss/standalone/configuration/logging.properties
-Djboss.modules.system.pkgs=org.jboss.byteman

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值