简单方式 (linux)
ps -ef | grep java
root 9787 1 0 Sep17 ? 00:02:48 /opt/IBM/WebSphere/AppServer/java/bin/java -Xms50m -Xmx256m
-Xms 和 -Xmx 分别代表分配JVM的最小内存和最大内存。
JVM工具
1、jps:查看本地正在运行的java进程和进程ID(pid)
2、jinfo pid,查看指定pid的所有JVM信息
1)jinfo -flags pid 查询虚拟机运行参数信息。
2)jinfo -flag name pid,查询具体参数信息,如jinfo -flag UseSerialGC 42324,查看是否启用UseSerialGC
3、jmap
1)jmap -heap pid:输出堆内存设置和使用情况(JDK11使用jhsdb jmap --heap --pid pid)
2)jmap -histo pid:输出heap的直方图,包括类名,对象数量,对象占用大小
3)jmap -histo:live pid:同上,只输出存活对象信息
4)jmap -clstats pid:输出加载类信息
5)jmap -help:jmap命令帮助信息
4、jstat:Java虚拟机统计工具,全称“Java Virtual Machine statistics monitoring tool”。可以用于监视JVM各种堆和非堆内存大小和使用量
1)jstat -class pid:输出加载类的数量及所占空间信息。
2)jstat -gc pid:输出gc信息,包括gc次数和时间,内存使用状况(可带时间和显示条目参数)
其他命令不一一列举。
4、jstat:Java虚拟机统计工具,全称“Java Virtual Machine statistics monitoring tool”。可以用于监视JVM各种堆和非堆内存大小和使用量
1)jstat -class pid:输出加载类的数量及所占空间信息。
2)jstat -gc pid:输出gc信息,包括gc次数和时间,内存使用状况(可带时间和显示条目参数)
其他命令不一一列举。
详细说明:见JVM工具jstat使用说明
5、jconsole,Java的GUI监视工具,${JAVA_HOME}/bin/jconsole.exe,本地和远程都可以监控。在CMD命令中输入JConsole pid可直接监控画面。