tomcat jboss 内存溢出

tomcat以及jboss的内存溢出解决方案  

2012-02-08 10:25:41|  分类: excepience |  标签:jboss  tomcat  内存溢出   |举报 |字号 订阅

1.   Tomcat在windows上内存溢出

修改Tomcat目录中bin目录下的catalina.bat文件,在开始处加入:

set JAVA_OPTS=%JAVA_OPTS% -Xms128m -Xmx512m -XX:PermSize=128m -XX:MaxPermSize=512m

 
 

通过这句话来调整jvm的配置。下面具体介绍下参数的含义:


?  -Xms               设置jvm初始化堆内存大小。

?  -Xmx               设置jvm最大的堆内存大小。

?  -XX:PermSize     设置非堆内存初始值。(默认是物理内存的1/64)

?  -XX:MaxPermSize  设置最大非堆内存大小。(默认是物理内存的1/4)

 







举个例子,如果服务器物理内存为4GB,那么默认的PermSize就是64MB,MaxPermSize就是1024MB。

 

我们经常遇到的内存溢出总的可以分为两种:

 

?  堆溢出             OutOfMemoryError:Heap space。

需要调整 –Xms和-Xmx的大小。

?  永久保存区域溢出   OutOfMemoryError:PermGen space。

需要调整permsize和MaxPermSize的大小。

我们可以通过Jconsole来监测目前的JVM参数设置。

2.   Tomcat在eclipse上内存溢出

我们在catalina.bat中配置tomcat后,通过tomcat bin目录的startup.bat启动tomcat可以解决内存溢出,但是如果通过MyEclipse启动tomcat仍会出现内存溢出的问题,这个时候我们需要配置下Myeclipse。

打开window->preferences->tomcat->jdk。在Optional java VM arguments中设置JVM:

-Xms128m -Xmx512m -XX:PermSize=128m -XX:MaxPermSize=512m

 
 

 


3.   Tomcat在linux上内存溢出

JAVA_OPTS='-Xms1024m -Xmx1024m -XX:PermSize=256M -XX:MaxNewSize=512m -XX:MaxPermSize=512m'

 
在catalina.sh中加入下面的配置,注意和windows上不一样。

 

 

 

 

4.   jboss在linux上内存溢出

在jboss目录下的bin目录中找到run.conf文件,修改配置如下:

JAVA_OPTS="-Xms512m -Xmx1024m -XX:MaxPermSize=256m -Dorg.jboss.resolver.warning=true -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000"

 
 

注意在fi中也加入配置(很重要)。如下:

tomcat jboss 内存溢出_第1张图片
 

具体看这篇文章:http://www-01.ibm.com/support/docview.wss?uid=swg21390229


2.   JBOSS在eclipse上内存溢出

在 JVM 默认的情况下,该部分空间的大小只有 4M,在 jar 包非常多的情况下,显然是不够用的,所以通过 -XX:MaxPermSize=256m 指定最大值后即可解决问题。

在Optional java VM arguments中设置JVM:

-Xms128m -Xmx512m -XX:MaxPermSize=256m

 

 

你可能感兴趣的:(tomcat jboss 内存溢出)