tomcat啓動的初始內存設置($TOMCAT_HOME/bin/catalina.sh)
JAVA_OPTS="-server -Xms2048M -Xmx2048M -Xss128k -XX:+AggressiveOpts -XX:+UseParallelGC -XX:+UseBiasedLocking"
參數詳解:
(1)、-Xms2048M
Java虛擬機初始化時使用的內存大小,爲了減少tomcat頻繁的申請內存,此參數
應該和Xmx設置的參數一樣大。
(2)、-Xmx2048M
JAVA虛擬機可以使用的最大內存,此參數的最大設置不允許超過物理內存的90%。
(3)、 -Xmn1500M
新生代大小
(4)、-Xss128k
設置tomcat每增加一個線程(Thread)就會立即消耗128K內存,最佳值應該是128,
默認值是512K。見意256K大小,這個對性能影響較大,需要多次測試。減少這個值可
以增加一個進程內的線程數量。
(5)、-XX:+UseParallelGC
一些測試表明當非64位系統,並且非高性能服務器時,這個選項會造成垃圾回收
變慢。(此選項決定對垃圾回收是否採用多線程)
(6)、-XX:+UseBiasedLocking"
非競爭性的同步選項,鎖機制的性能改善。
(7)、-XX:PermSize=256m
最小堆大小,一般把內存不足時就是把這個空間不足。默認爲物理內存的1/4。
(8)、-XX:+DisableExplicitGC
禁止System.gc(),免得程序員誤調用gc方法影響性能。
(9)、 -XX:MetaspaceSize=300M
元空間初始分配內存
(10)、 -XX:MaxMetaspaceSize=600M
元空間最大分配內存