IDEA针对Tomcat的JVM参数设置
碰到个问题,项目启动后一直有OutOfMemoryError: PermGen space错误,这个问题第一反应改IDEA的VM Options,没用,然后去改了Tomcat的Catalina.bat中的JAVA_OPTS,依然没有卵用,最后才直接去改了右上角edit Configuration中的VM options为-Xms1024m -Xmx2048m -Xss1024K -XX:MetaspaceSize=512m
,解决。
JVM部分配置参数解析
-Xms:内存堆栈最小值(即为jvm启动时分配的内存,比如-Xms200m,表示分配200M)
-Xmx:内存堆栈最大值(即为jvm启动时分配的内存,比如-Xms500m,表示jvm进程最多只能够占用500M内存)
-Xss:为jvm启动的每个线程分配的内存大小,默认JDK1.4中是256K,JDK1.5+中是1M
-XX:MetaspaceSize:这个参数是初始化的Metaspace大小,该值越大触发Metaspace GC的时机就越晚
-XX:MaxMetaspaceSize:这个参数用于限制Metaspace增长的上限,防止因为某些情况导致Metaspace无限的使用本地内存,影响到其他程序
-XX:+HeapDumpOnOutOfMemoryError:当出现HeapDumpOnOutOfMemoryError错误时,导出内存溢出的堆信息(hprof文件)
-XX:HeapDumpPath=/root/heapdump:
生成DUMP文件的路径,也可以指定文件名称,例如:-XX:HeapDumpPath=${目录}/java_heapdump.hprof。如果不指定文件名,默认为:java__heapDump.hprof