tomcat内存溢出

tomcat内存溢出解决方法:
windows下更改catalina.bat文件内容(有则改无则加),主要是修改Xmx参数

set JAVA_OPTS=%JAVA_OPTS% -Xms512M -Xmx1024M -server -XX:PermSize=512M -XX:MaxPermSize=1024M

-Xms:minimum memory size for pile and heap,JVM 最小分配内存(初始分配内存)由-Xms指定,默认是物理内存的1/64
-Xmx:maximum memory size for pile and heap,JVM最大分配的内存由-Xmx指定,默认是物理内存的1/4
参数 -Xms,为了对齐三字符,压缩了其表示形式,采用计算机中约定表示方式: 用 x 表示 “大”,因此 -Xmx 中的 m 应当还是 memory。既然有了最大内存的概念,那么一开始的 -Xms 所表示的 `初始` 内存也就有了一个 `最小` 内存的概念(其实常用的做法中初始内存采用的也就是最小内存)。如果不对齐参数长度的话,其表示应当是 -Xmsx

JVM使用-XX:PermSize设置非堆内存初始值,默认是物理内存的1/64;由XX:MaxPermSize设置最大非堆内存的大小,默认是物理内存的1/4。方法区、JVM内部处理或优化所需的内存(如JIT编译后的代码缓存)、每个类结构(如运行时常数池、字段和方法数据)以及方法和构造方法的代码都在非堆内存中

 

你可能感兴趣的:(进阶问题)