java gc测试_Java GC 调试手记

摘要

本文记录GC调试的一次实验过程和结果。

GC知识要点回顾

问题1:为什么要调试GC参数?

在32核处理器的系统上,10%的GC时间导致75%的吞吐量损失。所以在大型系统上,调试GC是以小博大的不错选择。'

small improvements in reducing such a bottleneck can produce large gains in performance.'

64ee3d175fe8a988c333e3db53d0b234.gif

问题2:怎么样调试GC?

调试GC,有

三个主要的参数:

选择合适的GC Collector

整个JVM Heap堆的大小

Young Generation的大小(-Xmn?m or -XX:NewRatio=?)

问题3:有哪些不同的GC Collector?

GC shortname

Generation

Command line parameter

Comment

Copy

Young

-XX:+UseSerialGC

The Copying collector

MarkSweepCompact

Tenured

-XX:+UseSerialGC

The Mark and Sweep Compactor

ConcurrentMarkSweep

Tenured

-XX:+UseConcMarkSweepGC

The Concurrent Mark and Sweep Compactor

ParNew

Young

-XX:+UseParNewGC

The parallel Young Generation Collector — can only be used with the Concurrent mark and sweep compactor.

PS Scavenge

Young

-XX:+UseParallelGC

The parallel object scavenger

PS MarkSweep

Tenured

-XX:+UseParallelGC

The parallel mark and sweep collector

简而言之,Young和Tenured各种三种Collector,分别是

Serial 单线程

Parallel 多线程并行, GC线程和App线程取一运行&#x

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值