通过命令查看当前JVM配置信息
>java -XX:+PrintCommandLineFlags -version
执行结果如下:
[user@1001 ~]$ java -XX:+PrintCommandLineFlags -version
-XX:InitialHeapSize=128143232 -XX:MaxHeapSize=2050291712 -XX:+PrintCommandLineFlags -XX:+UseCompressedClassPointers -XX:+UseCompressedOops -XX:+UseParallelGC
java version "1.8.0_171"
Java(TM) SE Runtime Environment (build 1.8.0_171-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, mixed mode)
通过结果发现java8默认使用的是UseParallelGC(Parallel Scavenge + Parallel Old)垃圾收集器
通过下面的命令查询更详细信息
>java -XX:+PrintGCDetails -version
执行结果如下:
[user@1001 ~]$ java -XX:+PrintGCDetails -version
java version "1.8.0_171"
Java(TM) SE Runtime Environment (build 1.8.0_171-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, mixed mode)
Heap
PSYoungGen total 36864K, used 1270K [0x00000000d7400000, 0x00000000d9d00000, 0x0000000100000000)
eden space 31744K, 4% used [0x00000000d7400000,0x00000000d753d888,0x00000000d9300000)
from space 5120K, 0% used [0x00000000d9800000,0x00000000d9800000,0x00000000d9d00000)
to space 5120K, 0% used [0x00000000d9300000,0x00000000d9300000,0x00000000d9800000)
ParOldGen total 84992K, used 0K [0x0000000085c00000, 0x000000008af00000, 0x00000000d7400000)
object space 84992K, 0% used [0x0000000085c00000,0x0000000085c00000,0x000000008af00000)
Metaspace used 2231K, capacity 4480K, committed 4480K, reserved 1056768K
class space used 243K, capacity 384K, committed 384K, reserved 1048576K
通过结果可以查看到年轻代(eden、from、to)和老年代的大小和使用情况。