我想弄清楚为什么Elasticsearch节点上的JVM堆使用率始终保持在80%以上.为了做到这一点,我通过运行来进行堆转储
jmap.exe -heap:format=b 5348
Run Code Online (Sandbox Code Playgroud)
(5348是进程ID).然后我可以使用VisualVM分析转储.
问题是jmap
在进行转储时暂停JVM,因此节点基本上处于脱机状态大约5分钟.
本文提出了一种更快的方法,它依赖于gdb
在Linux 上使用coredump .我已经尝试过WinDbg,它创建了一个核心转储,但我无法在VisualVM中使用它.
Windows有类似的方法吗?如何在几秒钟内完成堆转储,而不是几分钟?