java.lang.OutOfMemoryError: PermGen space

ava.lang.OutOfMemoryError: PermGen space :这个错误很明显是内存溢出。我以前项目用的是6.0以上版本。后来经过很长时间的尝试6.0以上的版本没有相关的设置(也许本人能力有限)。

后来我把服务器的tomcat版本修改为了:5.0.18版本设置启动参数就好用了。另外还有一种可能就是服务器的承载能力太弱了。

设 置内存的启动参数方法为:Windows下启动Tomcat的方法有两种,一种是通过startup.bat批处理启动,不方便之处是桌面上始终要有一个 黑色窗口,不好看;另外一种方式是将tomcat注册成系统服务,这样既可以设置开机启动,也不会出现黑色窗口;显然后者要好些。

1、打开安装目录/bin/tomcat7w.exe,出现如下界面

Tomcat设置服务启动参数



2、在Java Options 文本框添加以下内容:
-XX:PermSize=128M
-XX:MaxPermSize=192m
-XX:ReservedCodeCacheSize=64m

3、将内存使用调大,初始内存调整到比Tomcat完整启动后要占用的内存大些,推荐设置:
Initial memory pool:320
Maximum memory pool:1024

4、讨论如下,比较合理的设置:
-XX:PermSize=128M
-XX:MaxPermSize=192m
-XX:ReservedCodeCacheSize=64m
Initial memory pool:320
Maximum memory pool:1024

有一种设置参考:初始参数和最大参数不能超过1024.启动的最大参数上限一般都是:1024.查询大量的资料在服务器性能好的情况下设置参数为:512,1024最佳。

原文地址:https://www.cnblogs.com/northeastTycoon/p/2789465.html