【发布时间】:2010-08-20 00:01:01
【问题描述】:
我公司的支持团队告诉我,当我们打开 -verbose:gc 时,某些 Java 版本会对性能产生重大影响。但是我不知道是不是这样。
这种记录在某个时候是否缓慢(ish),什么时候停止?
我问的原因是,对于将其应用于生产环境以调查潜在的内存泄漏(以及我们是否可以停止定期重启系统......)有些犹豫。
具体来说,我说的是 Java 1.4.2,我认为它引入了这个论点,以及它适用于什么服务包。
【问题讨论】:
-
他们是这么说的吗?根据我的经验,有一半时间他们不知道他们在说什么。在没有证据的情况下,这种说法只是八卦。
-
这个特定的支持人员足够可靠,因此需要进一步调查。但是,有可能只是垃圾收集的其他方面可以更改以严重影响性能。我当然不记得那么久了。
-
我担心你误解了我的意思。我毫不怀疑您的支持人员相信这是真的,当然记录总是比不记录要慢。你没有提到你为什么关心这个问题,所以这个问题可以表达为不是历史的好奇心,而是会产生更直接的答案。
-
这肯定是假的 - 我在一个组织工作了 10 年,将 JVM 移植到各种平台,在任何 1.4.2 JVM 上运行 verbose:gc 时都没有减速。
-
我同意上述评论和发布的答案。为了提供证据,您需要运行一些微基准测试。 SPECjbb、SPECjvm98,以及它们中的怪物,SPECjAppServer。祝你好运,并发布你的发现的更新。
标签: java performance logging garbage-collection jvm