我正在测试Tomcat 8.0.3和java 8(构建1.8.0-B 129 64位服务器VM (build 25.0-b69,混合模式))在Windows8.1上的Java 8.1应用程序。
只要点击几下鼠标,应用程序就会耗尽内存。众所周知,它在Windows7上运行良好,Tomcat 7运行良好,CentOS使用Java8(开放jdk)运行,内存为4GB。
org.springframework.web.util.NestedServletException:处理程序处理失败;嵌套异常为java.lang.OutOfMemoryError: PermGen space
警告RMI连接(11)-192.168.56.1服务器已决定关闭此客户端连接.
应用程序还使用本地ElasticSearch (不确定是否与其有任何关系)。
您能解释一下堆在实际内存使用量下降的同时不断增长的原因吗?

发布于 2014-06-30 14:05:40
这里的关键是"PermGen空间“。此空间用于加载.class文件。也许你的类路径上有太多的jar/其他libs,或者你的标准的permgen大小是不够的。
以下是如何为Tomcat设置自定义permGen空间的很好的说明:
https://stackoverflow.com/questions/24491816
复制相似问题