0

We've started monitoring our application with Yourkit, version 11. Since we did, we sometimes observe very strange behaviour. Minor garbage collections sometimes cause stop-the-world pauses longer than two minutes.

4

1 回答 1

0

次要收集中的长时间 STW 暂停可能是由本机线程引起的,这些线程必须在实际收集开始之前到达安全点(如在此处提到的:Java GC 安全点或此处:长时间偶然的年轻垃圾收集暂停)。

与分析器代理(.so/.dll 文件)一起使用的 Yourkit 使用了此类本地调用。实际执行这些调用的线程是从分析器中的线程视图中过滤出来的,并且看不到。这就是为什么 Yourkit 本身的堆栈跟踪视图无助于分析该问题的原因。

如果您停止在代理模式下使用 yourkit,问题就会消失。

编辑

根据 Peter Lawrey 的建议,我们下载了 yourkit 2014 的试用版。该代理已经在生产环境中运行了两天,问题不再出现。

于 2015-01-20T10:40:57.423 回答