您的位置:首页 > 运维架构 > Tomcat

Tomcat Java.OutOfMemoryError : PermGen Space异常

2017-10-25 09:51 477 查看
背景:前些日子更新公司多年前一个旧平台发布到Tomcat上之后,频繁收到网站许多模块无法正常使用的反汇。

测试过程中发现平台发布一段时间后,访问相关网页出现如下500页面



解决方案:PermGen space(permanent generation space 永久保存区域) windows下默认最大设置64M.

    重启tomcat服务后通过http://localhost:3088/manager/status查看Perm Gen占用率已经达到了90%以上 难怪运行一段时间后会内存溢出

    windows平台上解决方法:

    调整tomcatPermGen Space的大小:tomcat(解压版)\bin\catalina.bat 搜索%_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% %DEBUG_OPTS% 在后边添加-XX:PermSize=64m -XX:MaxPermSize=128m 重启tomcat 进入状态管理页面 发现最大容量已经改变



根本原因:该平台下于多年前已经开发完毕,之后一直处于维护更新状态公司并没有重构该平台的想法,由于当时并没有使用包管理工具同时包含多个webapp,导致每个webapp目录下都存在大量重复或无用的jar包里面的类信息被投入到永久保存区域中内,从而导致PermGen space内存溢出的情况发生。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐