最近手頭的項目報內存溢出錯誤,內存溢出(Out Of Memofy)簡稱為傳說中的OOM。^_^ 網上找資料學習了下JAVA_OPTS參數和配置,應用到生產環境,沒有再報錯。
錯誤信息:Java.lang.OutOfMemoryError: Java heap space
測試環境:RHEL5.4_x64
jdk-6u20-linux-x64.bin
apache-tomcat-6.0.20
生產環境:Windows Server 2008 Enterprise Edition
jdk-6u21-windows-x64
apache-tomcat-6.0.29
Linux修改catalina.sh文件
JAVA_OPTS=”-server -Dfile.encoding=UTF-8 -Xms=512m -Xmx1024m -XX:PermSize=128m -XX:MaxPermSize=256m -verbose:gc -Xloggc:${CATALINA_HOME}/logs/gc.log`date +%Y-%m-%d-%H-%M` -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -noclassgc”
Windows修改catalina.bat文件
set JAVA_OPTS=-server -Xms1024m -Xmx2048m -XX:PermSize=256m -XX:MaxPermSize=512m
Total memory:java虛擬機正在使用的已經從系統那里挖到的內存大小,也就是java虛擬機這個進程當時所占用的所有 內