jmap -heap给出了输出结果:
新一代使用100%,伊甸园空间使用100%,从使用的空间100%,到使用的空间:0%,使用的烫发一代:38%
这是100%的New,Eden,From space - 一个问题吗?
我的JAVA OPTS是:-Xms10240m -Xmx14336m -XX:PermSize = 192m -XX:MaxPermSize = 256m -XX:NewSize = 8192m -XX:MaxNewSize = 8192m -XX:-DisableExplicitGC -XX:+ UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction = 60
我看到很多快速的垃圾收集.但是使用像JConsole这样的工具没有内存泄漏
内存使用情况可以在这里看到:http: //tinypic.com/view.php?pic = wo213&s = 6
JDK 1.6正在使用中.
我们知道jmap -histo:live会触发一个完整的gc来确定活动对象:
由于jmap -histo考虑堆中的所有对象(年轻和老一代中的对象),我的观点是,jmap -histo也可以触发完整的gc.但是,我无法找到关于jmap -histo是否可以触发完整gc的可靠文档.
jmap -histo可以触发完整的垃圾回收吗?
我正在尝试使用jmap实用程序.每次都指定pid太难了,所以我搜索更容易的选项.在jmap的帮助下,我找到了一个选项
jmap [option] <executable <core>
但这绝对不能自我解释.什么代表可执行文件/核心?我怎么指定它?没有找到任何样品.
我想弄清楚为什么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有类似的方法吗?如何在几秒钟内完成堆转储,而不是几分钟?
当我使用jmap创建转储时
jmap -J-d64 -heap:format=b ${pid}
Run Code Online (Sandbox Code Playgroud)
我可以heap.bin在JProfiler中以某种方式打开结果吗?
最近我遇到了一个GC问题,我使用jmap转储堆。但不幸的是它并没有正常工作;
我在转储之前运行 jmap -histo 3916|more ,结果是
num #instances #bytes class name
----------------------------------------------
1: 1784198 733117168 [C
2: 12210014 390720448 java.util.concurrent.ConcurrentHashMap$Node
3: 11908601 285806424 java.lang.Long
4: 11884602 285230448 java.lang.Double
5: 545 86335608 [Ljava.util.concurrent.ConcurrentHashMap$Node;
6: 12405 65677584 [I
7: 1735496 41651904 java.lang.String
Run Code Online (Sandbox Code Playgroud)
然后我运行“jmap -dump:format=b,file=heap.bin 3916”,然后我使用eclipse MemoryAnalyzer来分析heap.bin,它产生了如下的直方图
Class Name | Objects | Shallow Heap | Retained Heap
-----------------------------------------------------------------------------------------
java.util.concurrent.ConcurrentHashMap$Node | 12,207,879 | 390,652,128 |
java.lang.Long | 11,889,204 | 285,340,896 |
java.lang.Double | 11,884,164 | 285,219,936 |
java.util.concurrent.ConcurrentHashMap$Node[]| 347 | 86,311,832 |
char[] | …Run Code Online (Sandbox Code Playgroud)