jvmgc管理及調(diào)優(yōu)

jvmgc管理及調(diào)優(yōu)

ID:35514981

大?。?41.00 KB

頁數(shù):10頁

時間:2019-03-25

jvmgc管理及調(diào)優(yōu)_第1頁
jvmgc管理及調(diào)優(yōu)_第2頁
jvmgc管理及調(diào)優(yōu)_第3頁
jvmgc管理及調(diào)優(yōu)_第4頁
jvmgc管理及調(diào)優(yōu)_第5頁
資源描述:

《jvmgc管理及調(diào)優(yōu)》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫

1、JVM系列三:JVM參數(shù)設(shè)置、分析不管是YGC還是FullGC,GC過程中都會對導(dǎo)致程序運行中中斷,正確的選擇不同的GC策略,調(diào)整JVM、GC的參數(shù),可以極大的減少由于GC工作,而導(dǎo)致的程序運行中斷方面的問題,進而適當?shù)奶岣逬ava程序的工作效率。但是調(diào)整GC是以個極為復(fù)雜的過程,由于各個程序具備不同的特點,如:web和GUI程序就有很大區(qū)別(Web可以適當?shù)耐nD,但GUI停頓是客戶無法接受的),而且由于跑在各個機器上的配置不同(主要cup個數(shù),內(nèi)存不同),所以使用的GC種類也會不同(如何選擇見GC種類及如何選擇)。本文

2、將注重介紹JVM、GC的一些重要參數(shù)的設(shè)置來提高系統(tǒng)的性能。??????JVM內(nèi)存組成及GC相關(guān)內(nèi)容請見之前的文章:JVM內(nèi)存組成?GC策略&內(nèi)存申請。JVM參數(shù)的含義?實例見實例分析參數(shù)名稱含義默認值?-Xms初始堆大小物理內(nèi)存的1/64(<1GB)默認(MinHeapFreeRatio參數(shù)可以調(diào)整)空余堆內(nèi)存小于40%時,JVM就會增大堆直到-Xmx的最大限制.-Xmx最大堆大小物理內(nèi)存的1/4(<1GB)默認(MaxHeapFreeRatio參數(shù)可以調(diào)整)空余堆內(nèi)存大于70%時,JVM會減少堆直到-Xms的最小限制

3、-Xmn年輕代大小(1.4orlator)?注意:此處的大小是(eden+2survivorspace).與jmap-heap中顯示的Newgen是不同的。整個堆大小=年輕代大小+年老代大小+持久代大小.增大年輕代后,將會減小年老代大小.此值對系統(tǒng)性能影響較大,Sun官方推薦配置為整個堆的3/8-XX:NewSize設(shè)置年輕代大小(for1.3/1.4)??-XX:MaxNewSize年輕代最大值(for1.3/1.4)??-XX:PermSize設(shè)置持久代(permgen)初始值物理內(nèi)存的1/64?-XX:MaxPer

4、mSize設(shè)置持久代最大值物理內(nèi)存的1/4?-Xss每個線程的堆棧大小?JDK5.0以后每個線程堆棧大小為1M,以前每個線程堆棧大小為256K.更具應(yīng)用的線程所需內(nèi)存大小進行調(diào)整.在相同物理內(nèi)存下,減小這個值能生成更多的線程.但是操作系統(tǒng)對一個進程內(nèi)的線程數(shù)還是有限制的,不能無限生成,經(jīng)驗值在3000~5000左右一般小的應(yīng)用,如果棧不是很深,應(yīng)該是128k夠用的大的應(yīng)用建議使用256k。這個選項對性能影響比較大,需要嚴格的測試。(校長)和threadstacksize選項解釋很類似,官方文檔似乎沒有解釋,在論壇中有這樣

5、一句話:"”-XssistranslatedinaVMflagnamedThreadStackSize”一般設(shè)置這個值就可以了。-XX:ThreadStackSizeThreadStackSize?(0meansusedefaultstacksize)[Sparc:512;Solarisx86:320(was256priorin5.0andearlier);Sparc64bit:1024;Linuxamd64:1024(was0in5.0andearlier);allothers0.]-XX:NewRatio年輕代(包括

6、Eden和兩個Survivor區(qū))與年老代的比值(除去持久代)?-XX:NewRatio=4表示年輕代與年老代所占比值為1:4,年輕代占整個堆棧的1/5Xms=Xmx并且設(shè)置了Xmn的情況下,該參數(shù)不需要進行設(shè)置。-XX:SurvivorRatioEden區(qū)與Survivor區(qū)的大小比值?設(shè)置為8,則兩個Survivor區(qū)與一個Eden區(qū)的比值為2:8,一個Survivor區(qū)占整個年輕代的1/10-XX:LargePageSizeInBytes內(nèi)存頁的大小不可設(shè)置過大,會影響Perm的大小?=128m-XX:+UseFa

7、stAccessorMethods原始類型的快速優(yōu)化??-XX:+DisableExplicitGC關(guān)閉System.gc()?這個參數(shù)需要嚴格的測試-XX:MaxTenuringThreshold垃圾最大年齡?如果設(shè)置為0的話,則年輕代對象不經(jīng)過Survivor區(qū),直接進入年老代.對于年老代比較多的應(yīng)用,可以提高效率.如果將此值設(shè)置為一個較大值,則年輕代對象會在Survivor區(qū)進行多次復(fù)制,這樣可以增加對象再年輕代的存活時間,增加在年輕代即被回收的概率該參數(shù)只有在串行GC時才有效.-XX:+AggressiveOpt

8、s加快編譯??-XX:+UseBiasedLocking鎖機制的性能改善??-Xnoclassgc禁用垃圾回收??-XX:SoftRefLRUPolicyMSPerMB每兆堆空閑空間中SoftReference的存活時間1ssoftlyreachableobjectswillremainaliveforsomeamo

當前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。