有时 Jetty 会使我们的服务器负载达到 100%——每个线程都占 1 个核心的 100%。
我们有 jetty 9 和 JDK 1.7(Jetty 6 和 JDK 1.7 - 没有出现)。Jetty
现在以默认设置运行,之前我们用JAVA_OPTIONS="-Xms4096m -Xmx4096m -server -XX:+UseConcMarkSweepGC"
我制作的主线程转储来运行它(使用 jstack -F pid),但这没有给我任何东西(我只是不明白)。倾倒
有没有什么方法可以确定哪个进程/项目正在加载 CPU?
答案1
我在那个线程转储中唯一看到的是一些线程在做一些复制和存档。几秒钟和几分钟的一系列线程转储会让你知道这些线程表现得很糟糕。在那个转储中,没有什么看起来立即不对劲的地方。
答案2
问题出在项目之一——当出现某些特定选项时,它会陷入无限循环。