我有一个在 64 位 LINUX 上运行的 JAVA 进程,版本为“CentOS Linux 版本 7.3.1611”,RAM 为 7.6GB。
下面是一些使用过的 JVM 标志,
注意:线程栈(1MB)和代码缓存(240MB)的大小为默认值,JDK版本为1.8.0_252。
在运行 TOP 命令时,它观察到我的 6.3 GB RAM 被 java 进程占用。
PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
20 0 28.859g 6.341g 22544 S 215.2 83.1 4383:23 java
Run Code Online (Sandbox Code Playgroud)
我尝试使用 JCMD、JMAP 和 JSTAT 命令分析 JVM 的本机内存。
JMAP -heap 命令的输出:
Debugger attached successfully.
Server compiler detected.
JVM version is 25.252-b14
using thread-local object allocation.
Garbage-First (G1) GC with 33 thread(s)
Heap …Run Code Online (Sandbox Code Playgroud)