-
jps,查看正在运行的Java进程,如
jps -l
-
jstack + “进程号”,分析该Java进程的栈空间情况
-
jinfo + “-flag” + “参数” + “进程号”,查看该Java进程的该项参数的大小(K-V型)或者是否开启了(是否型)
-
jinfo + “-flags” + “进程号”,查看该Java进程的所有相关系数情况
-
jconsole,调出Java可视化监控管理器
-
javac + “java文件名(有.java后缀)”,将Java文件编译成class文件
-
javap + “class文件名(没.class后缀)”,将class文件反编译成汇编语言
-
-Xmx,等价于 -XX:MaxHeapSize,最大堆内存,一般为运行内存的 1/4
-
-Xms,等价于-XX:InitialHeapSize,初始化堆内存大小
-
-Xss,等价于-XX:ThreadStackSize,单个线程栈空间的大小
-
-XX:MetaspaceSize,设置元空间的内存大小
-
-XX:+PrintGCDetails:开启打印输出GC的工作日志
-
-XX:+TraceClassLoading,开启追踪类加载时的日志
-
-XX:+TraceClassUnloading,开启追踪类卸载时的日志
-
-XX:SurvivorRatio,JVM堆内存中的年轻代的Eden、From、To的比例,默认为8,即8:1:1
-
-XX:NewRatio,JVM堆内存中的年轻代和老年代的比列,默认是2,即1:2
-
-XX:MaxTenuringThreshold,对象从新生代到老年代的年龄阈值(K-V型,没有+号,直接使用=赋值)
-
java -XX:+PrintFlagsInitial,该命令可以查看JVM “初始” 所有启动参数的值(但是有些参数大小会根据实际机型内存等变化)
如: “初始” 最大堆内存,uintx MaxHeapSize = 130862280 {product}
-
java -XX:+PrintFlagsFinal,该命令查看JVM “最终” 所有启动参数的值(有变化用 := 表示);
如: “最终”最大堆内存(内存的1/4,本机内存12G)
uintx MaxHeapSize := 3187671040 {product}
(但是有些参数大小会根据实际机型内存等变化)在这里有体现。
- java -XX:+PrintCommandLineFlags -version,查看一些已经被用户、JVM重新设置过的参数的名称和值;也即它列举出一些-XX:+PrintFlagsFinal的结果中有 “:=” 的参数,可以快速查看初始化堆内存大小、默认垃圾回收器等。
这部分JVM参数都是XX型的,-XX:,是否型使用+或-分别表示开启或者关闭;赋值型,没有+、-,直接使用“参数=值”的形式