在我们的环境中,tomcat 服务器经常挂起,然后我们增加堆并重新启动 tomcat。
还有其他方法可以分析 tomcat 中的堆转储吗? 我们可以在 tomcat 中创建堆转储吗?如果可能怎么办?
谢谢 苏里亚
最佳答案
首先,您应该准确分析导致 Tomcat 挂起的原因。导致应用程序“挂起”的原因有很多,例如死锁、长时间的 GC 暂停等。
如果您的 Tomcat 因 OutOfMemoryError
崩溃,查看堆转储是有意义的.
在这种情况下,您可以使用类似 MAT 的工具分析堆转储。
您可以随时使用 jcmd <pid> GC.heap_dump <file>
创建堆转储.您还可以设置 VM 选项 -XX:+HeapDumpOnOutOfMemoryError
.这将在您获得 OutOfMemoryError
时自动转储堆。 .
关于java - Tomcat 堆转储创建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34368376/