tomcat PermGen space

centos:

  修改Tomcat中的catalina.sh文件。--用了这个
  在catalina.sh文件中,找到cygwin=false,在这一行的前面加入参数,具体如下
  # vim TOMCAT_HOME/bin/catalina.sh
  JAVA_OPTS="-server -Xms1024m -Xmx2048m -XX:PermSize=256m -XX:MaxPermSize=1024m -XX:MaxNewSize=32m"
  http://www.th7.cn/system/lin/201410/72361.shtml
  1、手动设置MaxPermSize的大小,vim ${ TOMCAT_HOME }/bin/catalina.sh,找到echo "Using CATALINA_BASE:
  $CATALINA_BASE",在此之上加入:JAVA_OPTS="-server -XX:PermSize=64M -XX:MaxPermSize=128m。
  2、将多应用之间的相同的jar分离出来,放置${ TOMCAT_HOME }/shared/lib目录下,修改${ TOMCAT_HOME}/conf/catalina.properties文件中shared.loader=${catalina.base}/shared/lib,${catalina.base}/shared/lib/*.jar
  也可以将公用的jar全部放置${ TOMCAT_HOME }/lib包下。
  这样子就可以减少jar重复加载占用空间内存了。
  http://my.oschina.net/fuyung/blog/206112

window:
  ${ TOMCAT_HOME }/bin/catalina.bat
  set JAVA_OPTS=%JAVA_OPTS% %LOGGING_MANAGER% -server -Xms256M -Xmx1536M -XX:PermSize=64M -
  XX:MaxPermSize=128m -XX:MaxNewSize=256m
  解决办法:
  配置相关内存大小。其中按照启动tomcat的不同方式,分如下三种情况
    a):如果是eclipse的tomcat插件启动tomcat,在“window”菜单-“Preferences”-“Tomcat”-“JVM Settings”中添加JVM参数如下即可:
      -Xms128M -Xmx512M -XX:PermSize=128M -XX:MaxPermSize=256M
    b):如果tomcat是安装为windows服务,从服务启动,则打开注册表编辑器,定位到:HKEY_LOCAL_MACHINESOFTWAREApache SoftwareFoundationProcrun 2.0 omcat6ParametersJava(Win7 X64系统则位于HKEY_LOCAL_MACHINESOFTWAREWow6432NodeApache Software FoundationProcrun 2.0 omcat6ParametersJava)
    双击右侧窗口的“Options”键值,添加如下行:
    -XX:PermSize=128M
    -XX:MaxNewSize=256m
    -XX:MaxPermSize=256m
    c):如果是命令行方式启动tomcat,则修改脚本文件(Windows下为catalina.bat,Linux下为catalina.sh),同样的方式,为JAVA_OPTS变量添加上述参数即可
    其他:
    http://cheen.iteye.com/blog/1687420



  MyEclipse启动Tomcat内存溢出解决java.lang.OutOfMemoryError: PermGen space
  MyEclipse启动Tomcat无视catalina.bat中的内存设置。
   则需要做如下设置即可解决:
  Window-Preferences-Java-Installed JREs-选择JDK-右侧Edit-
  在Default VM aguments:中输入 -Xms256m -Xmx1024m -XX:PermSize=64M -XX:MaxPermSize=128m
  http://www.cnblogs.com/YangK-java/p/5282650.html