eclipse–tomcat記憶體配置 tomcat添加到系統服務 及其配置 解壓版tomcat 6.0 多個tomcat

來源:互聯網
上載者:User

我這裡是用的解壓版的tomcat6.0為例

由於我的項目在tomcat(6.0)裡面做了緩衝 所以tomcat預設的記憶體配置會導致OutOfMemoryError: Java heap space 也就是記憶體不夠用了

 

這裡要分情況

 

1.如果使用tomcat直接發布項目,在tomcat的bin目錄下,找到catalina.bat檔案,開啟,在最上面添加這樣一句:
set JAVA_OPTS=-Xms256m -Xmx512m.

即可。

 

 

2.我們用eclipse開發的時候,就算在tomcat的bin目錄下的catalina.bat添加這樣一句:
set JAVA_OPTS=-Xms256m -Xmx512m.

也無效。

 

需要在Eclipse:
菜單Window-->Preferences-->Java-->Installed JREs,選擇目前正在使用的JRE,點Edit-->Default VM Arguments:
針對本機記憶體情況輸入參數,如1G的機器可以設定成 -Xms30m -Xmx512m,然後重新啟動Tomcat

 

在jsp或者在serlvet,action裡面列印tomcat記憶體資訊即可看到tomcat此時的記憶體配置情況

 

如在action裡面寫一個 test 的action

 

 

public ActionForward test(ActionMapping mapping, ActionForm form1,HttpServletRequest request, HttpServletResponse response)throws Exception {System.out.println("TotalMemory :::: "+ (Runtime.getRuntime().totalMemory() / (1024 * 1024) + "M"));System.out.println("Max Memory :::: "+ (Runtime.getRuntime().maxMemory() / (1024 * 1024) + "M"));System.out.println("Free Memory :::: "+ (Runtime.getRuntime().freeMemory() / (1024 * 1024) + "M"));return null;}

 

tomcat啟動了以後訪問這個test即可看到列印資訊

我這裡的action為http://localhost:8080/aisvoyage/publicAction.do?operator=test

列印結果:

TotalMemory :::: 29M
Max Memory :::: 494M
Free Memory :::: 17M

 

那麼就設定成功了。

 

 

 

 

3.如果把tomcat解壓版添加到了windows的系統服務。我這裡添加兩個tomcat到系統服務為例

添加成服務的指令碼為

3.1.解壓2個TOMCAT到D盤目錄分別為tomcat1和tomcat2
3.2.編寫bat 檔案如:installTomcat.bat
內容如下:
rem 安裝tomcat1服務
set CATALINA_BASE=D:\tomcat1
set CATALINA_HOME=D:\tomcat1
call D:\tomcat1\bin\service.bat install tomcat1

rem 安裝tomcat2服務
set CATALINA_BASE=D:\tomcat2
set CATALINA_HOME=D:\tomcat2
call D:\tomcat2\bin\service.bat install tomcat2

3.3:做2個TOMCAT系統服務,方便啟動/停止/重新啟動等操作。
刪除系統命令為:sc delete 服務名 如果服務名有空格的話,服務名兩邊加引號。

 

服務添加成功了以後需要開啟註冊表  win+r 然後輸入 regedit 找到

HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Procrun 2.0\tomcat1\Parameters\ 

右邊是參數列表  預設是初始128M 最大256M

 

JvmMs 是tomcat初始化佔用的記憶體的大小 

JvmMx 是tomcat最大能佔用的記憶體大小

 

雙擊用10進位修改以後 重新啟動tomcat的系統服務即可!

 

如果是tomcat5 則是在

 HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Tomcat Service Manager\Tomcat5\Parameters\JavaOptions

後面追加 -Xms300m -Xmx350m

 

 

 

4.tomcat連接埠不衝突需要設定每一個tomcat的監聽連接埠為獨享唯一的。

 

在tomcat/conf/server.xml裡面有三處連接埠需要改

 

4.1.<Server port="8005" shutdown="SHUTDOWN">port 需要修改成唯一的

4.2<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />port 需要修改成唯一的

4.3<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />port 需要修改成唯一的

 

在此記錄下來以備後用和給新手參考..

 

good lucky

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.