在生产系统上详细分析Tomcat Heap

And*_*son 9 java heap tomcat jmx

分析了在tomcat中运行的轻量级Web应用程序,使用JMX控制台,结果发现"PS Old Gen"正在缓慢但不变地增长.它从200MB开始,每小时增长约80MB.

CPU不是问题,它平均运行在0-1%,但它在某处泄漏内存,因此在部署后几天它会变得不稳定.

我如何找出堆上分配的对象?你知道有什么好的教程或工具吗?

McD*_*ell 2

您可以尝试jmap , JDK 开发工具之一。您可以将jhat与输出结合使用,以使用 Web 浏览器遍历堆转储。

请参阅此答案以获得简短的解释。

这种情况经常出现,因此搜索这些工具应该会找到一些替代方案。