实用的JVM及内存分配参数

https://docs.oracle.com/javase/8/docs/technotes/tools/unix/java.html

1 内存分配

  1. -Xmx 设置最大堆内存
  2. -Xms 设置最小堆内存
  3. -Xmn 设置新生代大小 一般设置为整个堆内存的1/4到1/3 会设置相同的-XX:NewSize-XX:MaxNewSize
  4. -XX:MaxPermSize 设置永久代大小
  5. -Xss 设置线程栈大小
  6. -XX:SurvivorRatio 设置eden区和survivor区的比例,默认为8
  7. -XX:NewRatio 设置新生代和老年代的比例 老年代/新生代

2 JVM参数

  1. -XX:CompileThreshold
  2. -XX:+HeapDumpOnOutOfMemoryError 发生OOM异常时转存快照文件
  3. -XX:HeapDumpPath 设置快照文件的存储路径
  4. -XX:+PrintGC-verbose:gc 打印GC日志
  5. -XX:+PrintGCDetails 打印GC记录,比上面两个命令的信息全面
  6. -XX:+PrintTenuringDistribution 对象晋升老年代的实际阈值
  7. -XX:MaxTenuringThreshold 设置晋升老年代的最大年龄
  8. -XX:PretenureSizeThreshold 设置大对象直接进入老年代的阈值
  9. -XX:+PrintHeapAtGC 发生GC时打印详细的堆信息
  10. -XX:+PrintGCApplicationStoppedTime 查看应用程序在GC发生时的停顿时间
  11. -XX:+PrintGCApplicationConcurrentTime 查看应用程序在GC发生时同步执行的时间
  12. -XLoggc:logfile 将GC日志存储到指定的位置 如/usr/local/gc/log/gc.log
  13. -XX:+TraceClassLoading 打印类加载的信息
  14. -XX:+TraceClassUnloading 打印类卸载的信息
  15. -verbose:class 同时打印类加载和卸载的信息
  16. -XX:+DisableExplicitGC 禁止在程序中手动触发gc
  17. -Xnoclassgc 关闭在GC时对类的回收
  18. -Xincgc 启用这个参数会进行增量式GC,通过特定算法使GC线程和应用程序线程交叉执行,从而减小应用程序因GC而产生的停顿时间
  19. -XX:+UseLargePages 启用大页
  20. -XX:+LargePageSizeInBytes 设置大页的大小
  21. -XX:+UseCompressedOops 启用压缩指针 会对Class的属性指针、对象的属性指针、普通对象数组的每个元素指针
  22. -XX:+UseSerialGC 指定使用新生代串行收集器和老年代串行收集器
  23. -XX:+UseParNewGC 新生代使用并行收集器 老年代串行
  24. -XX:+UseParallelGC 新生代使用并行收集器 老年代串行
  25. -XX:+UseConcMarkSweepGC 新生代使用并行收集器,老年代使用CMS
  26. -XX:ParallelCMSThreads 设置CMS的线程数量 默认为 (ParallelGCThreads+3)/4
  27. -XX:CMSInitiatingOccupancyFraction 指定当老年代空间使用率达到多少时进行一次CMS垃圾回收,默认为68
  28. -XX:+UseCMSCompactAtFullCollection 可以使CMS在垃圾收集完成后,进行一次内存碎片整理
  29. -XX:CMSFullGCsBeforeCompaction 设定进行多少次CMS回收后,进行一次内存压缩
  30. -XX:ParallelGCThreads 指定并行收集器工作时的线程数量,当CPU数量小于8时,设置为CPU数量;当CPU数量大于8个时,设置为3+(5*CPU数量)/8
  31. -XX:+UseParallelOldGC 新生代和老年代都使用并行回收处理器
  32. -XX:MaxGCPauseMillis 设置最大垃圾收集挺短时间
  33. -XX:GCTimeRatio 设置吞吐量 0~100的整数 默认值为99
  34. -XX:+UseAdaptiveSizePolicy 打开自适应GC策略
  35. -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC 启用G1收集器
  36. -XX:MaxGCPauseMillis 设置最大垃圾收集停顿时间
  37. -XX:GCPauseIntervalMillis 设置停顿间隔时间
  38. -XX:MinHeapFreeRatio 设置堆空间最小空闲比例
  39. -XX:MaxHeapFreeRatio 设置堆空间最大空闲比例
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值