只是想知道启用详细GC是否会对应用程序的性能产生任何影响。
我的猜测并非如此。
我知道启用详细的GC可以输出合理的数据,并且想知道这是否会对性能产生任何影响?
答案 0 :(得分:5)
输出到文件/控制台的任何内容都会产生一些I / O开销。在每次垃圾收集事件上添加额外的几毫秒延迟肯定会对性能产生一些影响。
但实际上,您的应用程序必须经历很多这些应用程序,并且在您注意到之前需要承受相当大的负担。没有测试就很难分辨。
答案 1 :(得分:1)
以下是IBM的一些性能基准测试。两者都表明,在他们的基准测试场景中,详细GC的开销非常小:
当然,这是在IBM JVM上,因此Hotspot的结果可能会有所不同。但是,与IBM JVM一样,写入日志的大多数度量标准可能已在内部计算,原因尚未得到优化,因此唯一的额外开销是将已计算的数据写入日志的行为。正如WDS所说,你必须以惊人的频率进行收集,然后开销才会对你的整体表现产生重大影响。