zoukankan      html  css  js  c++  java
  • 关于jvm的OutOfMemory:PermGen space异常的解决

    在做网校的时候,经常会在控制台会报出方法区的内存溢出,在网上找的方法,无非都是在tomcat的bin/catalina.bat文件中

    设置jvm的堆的大小和方法区的大小,但是通过eclipse启动tomcat之后,没过多久就又会报方法区内存溢出。

    刚开始的时候,还没有想起使用jdk自带的jvm监控工具(jconsole.exe)去查看jvm各内存区域的大小,所以以为通过在catalina.bat

    中的配置应该生效了,但是还是内存溢出,实在是头痛。。。。

    通过在bin/catalina.bat文件中的“rem ----- Execute The Requested Command -”这个后面增加了下面的语句

    set JAVA_OPTS=%JAVA_OPTS% -Xms256m -Xmx1024m -XX:PermSize=256M -XX:MaxNewSize=256m -XX:MaxPermSize=512m

    这个通过tomcat的startup.bat来启动时,是有效的。但是通过eclipse来启动tomcat,却不会生效。。

    通过eclipse来启动tomcat需要在eclipse来设置tomcat的jvm参数,具体位置:

    具体的参数代表的意思,参开jvm的参数说明。。设置之后,启动tomcat,在jconsole.exe中可以看到,设置生效了。。。

    问题解决。

  • 相关阅读:
    SQL Server逻辑读、预读和物理读
    SQL Server 视图
    SQL Server存储机制
    SQLServer
    数据库配置问题整理贴
    分析存储过程重编译的起因以及避免
    存储过程重编译的优点、缺点、确定引发语句
    查询反模式
    查询反模式
    状压DP的总结
  • 原文地址:https://www.cnblogs.com/wangliyue/p/5479138.html
Copyright © 2011-2022 走看看