1 初始堆大小:
預設值:物理記憶體的1/64(<1gb),預設(minheapfreeratio引數可以調整)空餘堆記憶體小於40%時,jvm就會增大堆直到-xmx的最大限制。
設定命令-xms
2 最大堆大小:
預設值:物理記憶體的1/4(<1gb),預設(maxheapfreeratio引數可以調整)空餘堆記憶體大於70%時,jvm會減少堆直到 -xms的最小限制。
3 年輕代大小
預設值:注意:此處的大小是(eden+ 2 survivor space).與jmap -heap中顯示的new gen是不同的。
整個堆大小=年輕代大小 + 年老代大小 + 持久代大小.
增大年輕代後,將會減小年老代大小.此值對系統效能影響較大,sun官方推薦配置為整個堆的3/8
設定命令:-xmn
4 設定持久代(perm gen)初始值
預設值:物理記憶體的1/64。
設定命令:-xx:permsize
5 設定持久代最大值
預設值:物理記憶體的1/4。
設定命令:-xx:maxpermsize
6 每個執行緒的堆疊大小
預設值:jdk5.0以後每個執行緒堆疊大小為1m,以前每個執行緒堆疊大小為256k.更具應用的執行緒所需記憶體大小進行 調整.在相同物理記憶體下,減小這個值能生成更多的執行緒.但是作業系統對乙個程序內的執行緒數還是有限制的,不能無限生成,經驗值在3000~5000左右
一般小的應用, 如果棧不是很深, 應該是128k夠用的 大的應用建議使用256k。這個選項對效能影響比較大,需要嚴格的測試。(校長)
和threadstacksize選項解釋很類似,官方文件似乎沒有解釋,在論壇中有這樣一句話:」」
-xss is translated in a vm flag named threadstacksize」
一般設定這個值就可以了。
設定命令:-xss
jvm引數設定心得
jvm 新生代到老年代的 次數閾值預設為15 新生代不能設定的過大,那樣會延長 時間。時間在0.02以上的級別程式會有異常,在0.004的級別程式基本正常,也不能設定的太小,那樣 次數過於頻繁,導致大量的新生代物件持續的到達老年代,因為短時間內 次數超多15次,而老年代的物件 會很耗時,應該盡量的避...
jvm 常用設定引數
部分參考 感謝樓主分享 jvm常用引數設定 首先先明白引數的型別 1 標準引數 所有的jvm實現都必須實現這些引數的功能 2 非標準引數 x 預設jvm實現這些引數的功能,但是並不保證所有jvm實現都滿足,且不保證向後相容 3 非stable引數 xx 此類引數各個jvm實現會有所不同,將來可能會隨...
vim常用引數設定
set guifont monaco h10 適合ruby開發的字型 字型大小 set tabstop 4 設定tab鍵的寬度 set shiftwidth 4 換行時行間交錯使用4個空格 set autoindent 自動對齊 set backspace 2 設定退格鍵可用 set cindent...