jvm参数选项要求

1. JVM参数列表(JDK7 Linux 64bit)

  jvm参数 默认值 参考值,最终以压测结果为准 描述
*** -server     jvm server模式以启动
*** -Xms 物理内存1/64 4g 初始堆大小
*** -Xmx 物理内存1/4 4g 最大堆大小
*** -Xmn   2g 年轻代大小
*** -Xss 1024k 256k | 1024k 每个线程的栈大小
*** -XX:PermSize= 物理内存1/64 128m 初始持久代大小
*** -XX:MaxPermSize= 物理内存1/4 512m 最大持久代大小
*** -XX:SurvivorRatio= 8   伊甸区和幸存区比例
         
*** -XX:+UseConcMarkSweepGC     对老年代使用同步标记并摖除垃圾收集算法
*** -XX:CMSInitiatingOccupancyFraction= 92 75 使用cms作为垃圾回收使用70%后开始CMS收集
*** -XX:+UseCMSInitiatingOccupancyOnly     使用手动定义初始化定义开始CMS收集
*** -XX:+UseParNewGC     对新生代使用并发垃圾收集算法
*** -XX:+UseCMSCompactAtFullCollection     在FULL GC的时候,对年老代的压缩
*** -XX:CMSFullGCsBeforeCompaction= 0   执行多少次FULL GC对对内存进行压缩
*** -XX:ParallelCMSThreads= Runtime.availableProcessors()*5/8   CMS收集线程数
*** -XX:ConcGCThreads= (ParallelCMSThreads+3)/4    
*** -XX:+CMSClassUnloadingEnabled 未开启    
         
*** -XX:ErrorFile=   ./hs_err_%p.log 错误发生时,把错误保存到一个指定文件
*** -XX:+HeapDumpOnOutOfMemoryError      当抛出异常java.lang.OutOfMemoryError 时,Dump heap 到文件
*** -XX:HeapDumpPath=   ./ 堆dump文件的存放目录
         
*** -Xloggc:   ./gc.log 把垃圾收集相关日志信息记录到文件
*** -XX:+PrintGCDetails     垃圾收集时打印具体信息
*** -XX:+PrintGCDateStamps     垃圾收集时打印时间戳
*** -XX:+PrintGCApplicationStoppedTime     打印垃圾回收期间程序暂停的时间.可与上面混合使用
         
*** -XX:AutoBoxCacheMax= 128 20000 自动装箱池的大小 
*** -XX:-OmitStackTraceInFastThrow 开启 关闭 禁止截断异常堆栈信息
*** -Dfile.encoding= 操作系统编码 UTF-8 JVM默认编码
*** -Djava.awt.headless=   true 在linux环境下启用headless图像处理模式
*** -Dcom.sun.management.jmxremote      启用JMX,方便zabbix监控
*** -Dcom.sun.management.jmxremote.authenticate=   false 是否开启JMX身份验证
*** -Dcom.sun.management.jmxremote.ssl=   false 是否使用ssl协议
*** -Dcom.sun.management.jmxremote.port=   11099 JMX远程端口
*** -Djava.rmi.server.hostname=   127.0.0.1 JMX绑定的ip,固定配置为127.0.0.1只允许本机访问
         
*** -XX:MaxTenuringThreshold= 15   对象被移到老年代的年龄阈值的最大值
*** -XX:PretenureSizeThreshold= 0   对象超过多大是直接在老年代分配
*** -XX:MaxDirectMemorySize= 最大堆 - 1个幸存区   直接内存最大值(堆外内存)
*** -XX:+ExplicitGCInvokesConcurrent 未开启    
*** -XX:+ExplicitGCInvokesConcurrentAndUnloadsClasses 未开启    
         
*** -XX:+PrintCommandLineFlags     打印在命令行中的标志
*** -XX:+PrintFlagsFinal     JVM运行时生效的标志
*** -XX:+PrintTenuringDistribution 未开启   打印对象年龄分布情况
*** -XX:+PrintHeapAtGC 未开启   打印GC前后的详细堆栈信息
*** -XX:+TraceClassLoading 未开启   跟踪类的加载信息
*** -XX:+TraceClassLoadingPreorder 未开启   跟踪被引用到的所有类的加载信息
*** -XX:+TraceClassResolution 未开启   跟踪常量池
*** -XX:+TraceClassUnloading 未开启   跟踪类的卸载信息
*** -XX:+TraceLoaderConstraints 未开启   跟踪类加载器约束的相关信息
         
         
         
         
*** 必须要有      
*** 调试时使用      
*** 如果使用,必须经过压测      
         
         
  默认JVM值查看: java -XX:+PrintFlagsFinal -version    
         

 

 

2. 示例

1
-server -Xms4g -Xmx4g -Xmn2g -Xss1024k -XX:PermSize=128m -XX:MaxPermSize=512m -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -XX:AutoBoxCacheMax=20000 -XX:-OmitStackTraceInFastThrow -XX:ErrorFile= /tmp/hs_err_ %p.log -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath= /tmp/ -Xloggc: /tmp/gc .log -XX:+PrintGCDetails -XX:+PrintGCDateStamps

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值