
JVM 参数设置
堆内存
-Xss #设置栈大小栈空间不足时对应 java.lang.StackOverFlow
栈内存
-Xms #最小堆内存
-Xmx #最大堆内存堆空间不足时对应 java.lang.OutOfMemory
排查堆内存溢出时,可以把堆内存设置小一些,这些可能尽早暴露潜在的问题
元空间(Metaspace) <-- 1.8及以后,方法区在这里
元空间默认没有大小限制,因此不会内存溢出。为了演示内存溢出,需设置:
-XX:MaxMetaspaceSize=8m元空间不足时对应 java.lang.OutOfMemory: Metaspace
1.8及以后才叫元空间。在此之前称为永生代
永生代(PermGen space) <-- 1.8以前,方法区在这里
-XX:MaxPermSize=8m永生代不足时对应 java.lang.OutOfMemory: PermGen space
永久代在堆内存,元空间在系统内存(本地内存)
StringTable
-XX:+PrintStringTableStatistics # 打印 StringTable 的信息垃圾回收器
-XX:+PrintGCDetails -verbose:gc # 提供全面的GC日志信息