JVM调优步骤

JVM调优主要调整两个指标:

  • 停顿时间:垃圾回收器gc中断应用执行的时间。 -XX:MaxGCPauseMillis
  • 吞吐量:垃圾收集的时间和总时间的占比:1/(1+n),吞吐量为1-1/(1+n)。 -XX:GCTimeRatio=n

垃圾回收器选择:

  • 优先调整堆大小让服务器自己选择
  • 如果内存小于100m,使用串行收集器
  • 如果是单核,并且没有时间停顿要求,选择串行或者JVM自己选择
  • 如果允许停顿时间超过1秒,选择并行或者JVM自己选择
  • 如果相应时间最重要,并且不能超过1秒,使用并发收集器
  • 如果机器配置高,官方推荐G1,性能高

调优步骤

  • 打印分析GC日志
  • 参数:-XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintGCDateStamps -Xloggc:./gc.log
  • 分析日志里面的关键性指标:吞吐量、最大停顿、平均停顿、YoungGC次数、FullGC次数
  • 分析GC原因,调优JVM参数

GC常用参数

  • -Xss:每个线程的栈大小
  • -Xms:初始堆大小,默认物流内存的1/64
  • -Xmx:最大堆大小,默认物理内存的1/4
  • -Xmn:新生代大小
  • -XX:NewSize:新生代初始大小
  • -XX:NewRatio:默认2,表示新生代占老年代的1/2,占整个内存的1/3
  • -XX:SurvivorRatio:默认8,表示一个survivor区占用1/8的Eden内存,1/10的新生代内存
  • -XX:MetaspaceSize:设置元空间大小
  • -XX:MaxMetaspaceSize:设置元空间最大允许大小,默认不受限制,JVM Metaspace会进行动态扩展
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值