选择垃圾收集器的性能指标

时间:2019-04-01 17:28:19

标签: java garbage-collection java-11 g1gc

选择垃圾收集器时我应该测量什么?

在我的案例中,我试图比较G1GC上的吞吐量收集器的性能,不确定在做出最终决定之前应该寻找什么。我知道查看垃圾收集器花费了多少时间听起来是个好主意,但这可能可能不会影响我的应用程序性能。 (仅供参考-从Java 8迁移到Java 11)

1 个答案:

答案 0 :(得分:2)

JVM中不同的GC是为不同的用例设计的:

  1. 吞吐量-并行
  2. 延迟-CMS
  3. 可预测性-G1,ZGC

一旦您知道要查找的是哪种用例,就可以选择一个相关的指标,例如测量吞吐量收集器的平均暂停时间没有任何意义,最好查看花费的总收集时间。

将并行收集器与G1进行比较是没有意义的,它们是为不同的用例而设计的。如果必须快速处理大量数据,请使用Parallel。如果您有一个必须在工作负载期间响应的应用程序,请使用G1。