`
zhjxtf
  • 浏览: 10099 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

Tomcat下运行WEB项目内存溢出的情况。

 
阅读更多
导致原因:SUN的JVM的PermSize默认值太小,导致了java.lang.OutOfMemoryError: PermGen space异常。

解决办法:
1. 使用带有脚本的Tomcat。
2. 如果系统已经运行安装过tomcat安装包,那么在系统环境中会有CATALINA_BASE,CATALINA_HOME,等配置,这些配置是全局的,应该删去。由于tomcat的启动脚本会配置临时的启动参数,所以不会影响tomcat的启动。
3. 参数配置建议在catalina.bat文件的Execute The Requested Commnad注释之后。
4. 在添加参数时,需要保持原有参数不被全部覆盖,比如添加配置项到JAVA_OPTS,应该首先set JAVA_OPTS=%JAVA_OPTS%,之后再添加-server -XX:PermSize=128M -XX:MaxPermSize=512m参数。
5. 在配置完成PermSize后,还有可能出现java.lang.OutOfMemoryError: Java heap space。这是由于JVM的内存限制导致的。可以添加参数-Xms250m -Xmx1000m来配置,具体配置的内存数量因更具发布系统的内存容量来确定。

配置样例:
windows:
set JAVA_OPTS=%JAVA_OPTS% -Xms256m -Xmx1024m -XX:PermSize=128M -XX:MaxNewSize=256m -XX:MaxPermSize=256m

linux:
JAVA_OPTS=$JAVA_OPTS -Xms256m -Xmx1024m -XX:PermSize=128M -XX:MaxNewSize=256m -XX:MaxPermSize=256m
分享到:
评论

相关推荐

    Tomcat内存溢出的三种情况及解决办法分析

    Tomcat内存溢出的三种情况及解决办法分析 Tomcat内存溢出的原因 在生产环境中tomcat内存设置不好很容易出现内存溢出。造成内存原因是不一样的,当然处理方式也不一样。 这里根据平时遇到的情况和相关资料进行一个...

    tomcat溢出解决建议方案

    在windows server2003操作系统(32bit)下运行tomcat的web App经常发生内存溢出,其规律是发生溢出后重新启动tomcat,再过一个多月仍旧发生,一般来说,造成内存溢出原因是不一样的,当然处理方式也不一样。...

    Nginx+Tomcat在Windows下做负载均衡

    Tomcat 服务器作为一个 ...由于 Tomcat 自身对内存的占用有控制,当对内存的占用达到最大值时便会出现内存溢出,对网站的访问严重超时等现象,这时便需要重新启动 Tomcat 以释放占用的内存,这样做便会阻断网站运行。

    nginx+tomcat在windows下做负载均衡

    由于Tomcat自身对内存的占用有控制,当对内存的占用达到最大值时便会出现内存溢出,对网站的访问严重超时等现象,这时便需要重新启动Tomcat以释放占用的内存,这样做便会阻断网站运行。 所以对Tomcat做负载均衡便很...

    tomcat 线程守护

    在J2EE开发过程中经常由于内存溢出等多方面原因,导致tomcat服务器软件自动停止服务,从而影响了Web服务,本代码采用VB开发,主要是监控tomcat是否被关闭,保证tomcat的正常运行!

    Tomcat性能优化

    对于使用J2EE 进行开发者而言,在用Tomcat 作为Web 容 器时,或多或少都会遇到系统运行缓慢、Tomcat 内存溢出等问 题。为了避免生产模式中出现的这些问题,在实际应用中探索出了一些对Tomcat 优化技术

    后台管理系统

    更低版本的JDK6、JDK7可能需要设置Java内存-XX:PermSize=128M -XX:MaxPermSize=512M,否则可能出现这种类型的内存溢出:java.lang.OutOfMemoryError: PermGen space。 Servlet2.5或更高版本(如Tomcat6或更高版本)。...

    java 面试题 总结

    比如说内存溢出。不可能指望程序能处理这样的情况。 exception 表示一种设计或实现问题。也就是说,它表示如果程序运行正常,从不会发生的情况。 16、同步和异步有何异同,在什么情况下分别使用他们?举例说明。 ...

    超级有影响力霸气的Java面试题大全文档

    比如说内存溢出。不可能指望程序能处理这样的情况。 exception 表示一种设计或实现问题。也就是说,它表示如果程序运行正常,从不会发生的情况。 19、同步和异步有何异同,在什么情况下分别使用他们?举例说明。 ...

    java面试题

    答:运行时异常时(JVM)java虚拟机在运行过程中发生的问题,比如:内存溢出等问题。这类异常没法要求程序员去一一捕获并抛出,一般异常是Java类库或程序员自己写的代码发生的错误,这类异常可以由我们去一一捕获并...

Global site tag (gtag.js) - Google Analytics