2015-10-20 53 views
1

我發現在SO和其他站點上發佈大量問題以在發生錯誤時增加tomcat的內存。但他們沒有一個看起來是一樣的,因爲他們中的一些人說使用CATALINA_OPTS,並且一些人說JAVA_OPTS。如果沒有文件創建它,他們說的位置大多像bin/setenv.shtomcat中的堆和PermGenspace增加

我按照上面的說明,仍然無法正確設置memory

我在當前使用tomcat的bin目錄裏面創建了setenv.sh文件,但是仍然沒有增加堆空間。

CATALINA_OPTS="-Dfile.encoding=UTF-8 -server -Xms512m -Xmx1024m -XX:PermSize=512m -XX:MaxPermSize=1024m -XX:+DisableExplicitGC" 

這是我setenv.sh的內容和取悅任何人解釋什麼是這裏的問題是,是否setexport需要setenv.sh使用。

任何人都可以指導我嗎?

+0

所有您需要檢查是所有參數要傳遞到你的'java'命令。 –

+0

使用'export',否則環境變量設置將不會被調用shell看到。 –

回答

1

請嘗試編輯的bin/setenv.sh

export CATALINA_OPTS="-Dfile.encoding=UTF-8 -server -Xms512m -Xmx1024m -XX:PermSize=512m -XX:MaxPermSize=1024m -XX:+DisableExplicitGC" 

JAVA_OPTS傳遞給所有JVM進程在同一臺機器上運行。如果您特別想將JVM參數傳遞給Tomcat,請使用CATALINA_OPTS

通過在終端中使用ps -eaf | grep 'tomcat',我們可以確認這些值。

例如,

root  32451  1 99 13:57 pts/1 00:00:07 /usr/java/jdk1.7.0_79/bin/java 
-Djava.util.logging.config.file=/opt/apache-tomcat/conf/logging.properties 
-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager 
-Dfile.encoding=UTF-8 -server -Xms512m -Xmx1024m -XX:PermSize=512m -XX:MaxPermSize=1024m -XX:+DisableExplicitGC 
-Djava.endorsed.dirs=/opt/apache-tomcat/endorsed -classpath /opt/apache-tomcat/bin/bootstrap.jar:/opt/apache-tomcat/bin/tomcat-juli.jar 
-Dcatalina.base=/opt/apache-tomcat 
-Dcatalina.home=/opt/apache-tomcat 
-Djava.io.tmpdir=/opt/apache-tomcat/temp org.apache.catalina.startup.Bootstrap start 
+0

你能告訴我如何確認我設置的新HeapSize? –

+0

我已經添加了確認值的步驟。 – Anju

+0

不,我已經嘗試過,因爲你說過,但參數並不像你給的那樣。 –