1. 程式人生 > >Tomcat配置虛擬內存

Tomcat配置虛擬內存

msi tro .exe 解壓 p s per space 啟用 三種

一、Tomcat啟動參數

 JAVA_OPTS參數說明
  -server 啟用jdk 的 server 版;
  -Xms java虛擬機初始化時的最小內存;
  -Xmx java虛擬機可使用的最大內存;
  -XX: PermSize 內存永久保留區域
  -XX:MaxPermSize 內存最大永久保留區域
  服務器參數配置

  現公司服務器內存一般都可以加到最大2G ,所以可以采取以下配置:

  JAVA_OPTS=’-Xms1024m -Xmx2048m -XX: PermSize=256M -XX:MaxNewSize=256m -XX:MaxPermSize=256m’

  配置完成後可重啟Tomcat

二、堆內存設置

A、window設置Tomcat

(1)第一種方法:修改 tomcat/bin/catalina.bat 文件

增加一行 set JAVA_OPTS=-Xms256m -Xmx1024m

也可以set CATALINA_OPTS="-Xmx512m -Xms512m -Xmn64m -Xss2m"

設置CATALINA_OPTS 和 JAVA_OPTS都是一個道理,在啟動tomcat的時候設置參數。

兩者區別是JAVA_OPTS在tomcat停止的時候也會執行這個命令。

(2)第二種方法:環境變量中設置

變量名:JAVA_OPTS

變量值:-Xms512m-Xmx512m

(3)第三種方法:前兩種方法針對的是bin目錄下有catalina.bat的情況(比如直接解壓的Tomcat等),但是有些安裝版的Tomcat下沒有catalina.bat,這個時候可以采用如下方法,當然這個方法也是最通用的方法

打開tomcatHome\bin\tomcat5w.exe,點擊Java選項卡,然後將會發現其中有這麽兩 項:

Initialmemorypool和Maximummemorypool.Initialmemorypool這個就是初始化設置的內存的大小。

Maximummemorypool這個是最大內存的大小設置完了就按確定然後再重啟TOMCAT你就會發現tomcat中jvm可用的內存改變了。

B、Linux 系統修改Tomcat

(1)修改 tomcat/bin/catalina.sh 文件

增加 JAVA_OPTS="-Xms256m -Xmx1024m"

也可以set CATALINA_OPTS="-Xmx512m -Xms512m -Xmn64m -Xss2m"

設置CATALINA_OPTS 和 JAVA_OPTS都是一個道理,在啟動tomcat的時候設置參數。

兩者區別是JAVA_OPTS在tomcat停止的時候也會執行這個命令。

(2)和(3)與上面window配置一樣

三、永久保存區域

  PermGen space的全稱是Permanent Generation space,是指內存的永久保存區域。這一部分用於存放Class和Meta的信息,Class在被 Load的時候被放入PermGen space區域,它和和存放Instance的Heap區域不同,GC(Garbage Collection)不會在主程序運行期對PermGen space進行清理,所以如果你的APP會LOAD很多CLASS的話,就很可能出現PermGen space錯誤。

一般是加大-XX:PermSize -XX:MaxPermSize 來解決問題。

-XX:PermSize 永久保存區域初始大小

-XX:PermSize 永久保存區域初始最大值

如 set JAVA_OPTS= -Xms1024m -Xmx1024m -XX:PermSize=128M -XX:PermSize=256M

註意: java -Xmx1024m -Xms1024m -Xmn256m -Xss16m Test (Test是一個class文件)命令來測試的最大堆內存是 -Xmx與 -XX:PermSize的和。

Tomcat配置虛擬內存