tomcat出现的PermGen Space问题<转>
最近做项目碰到了让我纠结的问题,tomcat服务器运行一段时间,总是会自动报异常:java.lang.OutOfmemoryError:
PermGen Space 的错误,导致项目无法正常运行。
出现这个错误的原因,总结一下:
PermGen Space指的是内存的永久保存区,该块内存主要是被JVM存放class和mete信息的,当class被加载loader的时候
就会被存储到该内存区中,与存放类的实例的heap区不同,java中的垃圾回收器GC不会在主程序运行期对PermGen space
进行清理,所以当我们的应用中有很多的class时,很可能就会出现PermGen space的错误。
解决方法:
1. 手动设置MaxPermSize的大小
修改 TOMCAT_HOME/bin/catalina.bat(Linux上为catalina.sh)文件,在echo "using CATALINA_BASE:$CATALINA_BASE"上面加入这一行内容:
set JAVA_OPTS=%JAVA_OPTS% -server -XX:PermSize=128m -XX:MaxPermSize=512m
catalina.sh修改如下:
JAVA_OPTS="$JAVA_OPTS" -server -XX:PermSize=128m -XX:MaxSize=512m
2.修改 TOMCAT_HOME/bin/catalina.bat文件的内容:在 %_EXECJAVA% %JAVA_OPTS% 后面添加 -Xms=256m -Xmx512m 注意哦,前后后有空格的
例如: %_EXECJAVA% %JAVA_OPTS% -Xms=256m -Xmx512m(空格)后面的内容不变
3. 可以考虑将相同的第三方jar文件拷贝到tomcat/shared/lib 目录下,这样可以减少jar文件重复占用内存的。
tomcat出现的PermGen Space问题<转>的更多相关文章
- 迅速解决!!!!!启动Tomcat报错PermGen space
启动Tomcat报错 PermGen space 内存溢出 解决方法:扩大tomcat内存 修改参数:set JAVA_OPTS=-Xms1024m -Xmx1024m -XX:PermSi ...
- tomcat出现的PermGen Space问题
java.lang.OutOfmemoryError: PermGen Space 的错误,导致项目无法正常运行. 出现这个错误的原因,总结一下: PermGen Space指的是内存的永久保存区,该 ...
- tomcat内存溢出 PermGen space
1. java.lang.OutOfMemoryError: PermGen space ---- PermGen space溢出. PermGen space的全称是Permanent Gene ...
- tomcat的OutOfMemoryError(PermGen space)解决方法
修改TOMCAT_HOME/bin/catalina.bat,在“echo "Using CATALINA_BASE: $CATALINA_BASE"”上面加入以下行: set J ...
- tomcat出现的PermGen Space问题(bat,或者eclipse启动。)
参考地址 http://www.blogjava.net/allen-zhe/archive/2007/12/18/168556.html 参考地址:http://javavsxiaoming.ite ...
- Tomcat Java.OutOfMemoryError : PermGen Space异常
背景:前些日子更新公司多年前一个旧平台发布到Tomcat上之后,频繁收到网站许多模块无法正常使用的反汇. 测试过程中发现平台发布一段时间后,访问相关网页出现如下500页面 解决方案:PermGen s ...
- tomcat内存溢出:PermGen space解决方法
最近集群服务器中的几台服务器在半夜自动重启tomcat后一段时间便都会报java.lang.OutOfMemoryError: PermGen space. 习惯性的百度,得到的答案基本上都是统一的解 ...
- tomcat启动出现PermGen space错误
今天部署项目时,出现了jvm内存溢出的问题,显示PermGen space错误. 经过不断的努力,终于解决出来了. 步骤如下: 在eclipse中菜单栏run-->RunConfigurati ...
- linux中tomcat内存溢出PermGen space
1.若是部署时候,一个tomcat下面项目越少越好,单独为一个项目配置tomcat(在客户给你充足的端口的情况下) 2.在维护的时候,若一个tomcat下放多个项目的话,这时候可以把所有jar包放在t ...
随机推荐
- docker 和 vagrant 作为程序发布 和 开发的独立而统一的运行环境
docker 和 vagrant 作为程序发布 和 开发的运行环境,可以提供打包程序,并使得程序运行在一个独立的虚拟环境中,避免程序发布到客户机之后,环境不一致导致的诸多问题. refer: ...
- LeetCode[Linked List]: Remove Duplicates from Sorted List II
Given a sorted linked list, delete all nodes that have duplicate numbers, leaving only distinct numb ...
- python标准库介绍——35 pipes 模块详解
==pipes 模块== (只用于 Unix) ``pipes`` 模块提供了 "转换管道 (conversion pipelines)" 的支持. 你可以创建包含许多外部工具调用 ...
- nginx加载字体文件的时候报错
nginx 下加载配置 location ~* \.(eot|ttf|ttc|otf|eot|woff|woff2|svg)$ { root /web/static_jr ...
- Android log 日志分析
一. Log 日志中 Bug 类型 程序异常强制关闭: Force Close ,Fatal 程序无响应: Application Not Response , ANR(应用无响应).一般是主线程超时 ...
- [svc]linux性能监控
参考 w - Show who is logged on and what they are doing. [root@n1 ~]# w # w - Show who is logged on and ...
- [svc]为何linux ext4文件系统目录默认大小是4k?
linux ext4普通盘为什么目录大小是4k? Why does every directory have a size 4096 bytes (4 K)? To understand this, ...
- jar依赖
https://blog.csdn.net/honghailiang888/article/details/53019635
- SQL 中 replace 替换字符串中的字符 ''
update CfmRcd set reconsource=replace(reconsource,'''',''), cmffile =replace(cmffile,'''',''), cfmda ...
- VS注释与取消注释快捷键
最近在使用VS2010开发ASP.Net,突然发现想全部注释时找不到注释的快捷键,网上查了下,原来很简单,只是需要使用组合键. 注释: 先CTRL+K,然后CTRL+C 取消注释: 先C ...