這里向大家描述一下如何使用Tomcat配置JVM參數,Tomcat本身不能直接在計算機上運行,需要依賴於硬件基礎之上的操作系統和一個java虛擬機。您可以選擇自己的需要選擇不同的操作系統和對應的JDK的版本,但還是推薦您使用Sun公司發布的JDK。
主要通過以下的幾個jvm參數來設置堆內存的:
-Xmx512m | 最大總堆內存,一般設置為物理內存的1/4 |
-Xms512m | 初始總堆內存,一般將它設置的和最大堆內存一樣大,這樣就不需要根據當前堆使用情況而調整堆的大小了 |
-Xmn192m | 年輕帶堆內存,sun官方推薦為整個堆的3/8 |
堆內存的組成 | 總堆內存 = 年輕帶堆內存 + 年老帶堆內存 + 持久帶堆內存 |
年輕帶堆內存 | 對象剛創建出來時放在這里 |
年老帶堆內存 | 對象在被真正會回收之前會先放在這里 |
持久帶堆內存 | class文件,元數據等放在這里 |
-XX:PermSize=128m | 持久帶堆的初始大小 |
-XX:MaxPermSize=128m | 持久帶堆的最大大小,eclipse默認為256m。如果要編譯jdk這種,一定要把這個設的很大,因為它的類太多了。
|
一、windows環境下
1、添加JVM參數
到Tomcat的bin目錄下,打開文件catalina.bat,添加如下參數,然后保存。
set JAVA_OPTS=-server -Xms8024m -Xmx8048m -XX:PermSize=512m -XX:MaxPermSize=512m -Xss2048k
或者
set "JAVA_OPTS=%JAVA_OPTS% -Xms9024m -Xmx9024m -Xss512k"
2、檢驗是否生效
雙擊bin目錄下的startup.bat啟動tomcat,然后命令行窗口中輸入命令jvisualvm(打開JDK自帶的JVM工具Java Visual),查看tomcat的JVM參數。
jvisualvm
如下圖所示,JVM啟動參數和我們添加的參數一樣,說明有效。
如果jvisualvm 沒有看到tomcat , 可以手工添加 JMX連接,寫上具體的站點和端口,如下圖:
二、Linux環境下
1、添加JVM參數
到Tomcat的bin目錄下,打開文件catalina.sh,添加如下參數,然后保存。
JAVA_OPTS="-Xms512M -Xmx1024M"
2、檢驗是否生效
執行startup.sh啟動tomcat。
./startup.sh
1
查看JVM參數,輸入如下命令。
jps -v
如下圖所示,JVM啟動參數和我們添加的參數一樣,說明有效。