Tomcat多应用时遇到的PermGen SPACE问题

此贴用于记录我在工作中遇到过的tomcat permgen space 内存溢出的问题和是如何解决的。

问题产生的原因:
我有一个应用假定为PlayWeb01,因为业务UI变化巨大导致数据库表结构也变化巨大,客户的历史数据需要保存30年,这样,就不能够在原有数据库上进行升级,我又懒得给新业务部分单独配置一个数据源,因为这样做后续的工作量太大。于是乎,在同一个tomcat中部署了多个应用,问题就这样产生了,程序跑一段时间之后就会产生PermGen space 内存溢出。

-------------------------------------------------------------------------------
出现问题就来解决问题吧。
首先去问问<度娘>,如果不能再前几页找到你想要的,去问问<谷哥>。
查阅n多资料后发现原来这个问题,不是 tomcat的问题在这里代表遇到此问题并且因为此问题更换tomcat为其它中间件的同仁想tomcat致歉。这个问题jvm参数的问题。jvm设置的PermGen space 不够宽敞,解决方法很easy,当然如果你能一下就找到相关资料的话。
这里留下个东东,以方便自己下次遇到是快速解决........................

留下修改后的 catalina.bat。

附件是bat,由于本站不让传这个格式,这里只修改了扩展名,并没有真正压缩

修改的内容在 162行
rem ----- Execute The Requested Command ---------------------------------------
rem ---------------------------- 这里设置JVM的PermGen space--------------------
set JAVA_OPTS=%JAVA_OPTS%  -server -Xms256m -Xmx3g [i]-XX:PermSize=64m -XX:MaxPermSize=256m[/i]

echo Using CATALINA_BASE:   "%CATALINA_BASE%"

猜你喜欢

转载自eastzhang.iteye.com/blog/1788854