jvm 運行參數概括

-XX:autoBoxCacheMax   包裝類型的緩存最大值參見:http://www.javashuo.com/article/p-smmcgzzi-z.html
  -XX:autoBoxCacheMax=7777java

 

 

-Xms256M -Xmx1024M   堆的初始內存與最大內存
   在生產中,這兩個值設置成同樣大小,避免在GC 後調整堆大小時帶來的額外壓力算法

-XX:MaxPermSize   永久代的大小。在jdk8後已經被淘汰,使用Metaspace(元空間)
   -XX:MaxPermSize=128m 緩存

-XX:SurvivorRatio    兩個Survivor區和eden的比
  -XX:SurvivorRatio=8 表示兩個Survior/eden=2:8 ,即Survivor 佔年輕代的1/10jvm

-XX:NewRatio    新生代(eden+2*s)和老年代(不包含永區)的比值
  -XX:NewRatio=4 表示新生代/老年代=1:4 , 即年輕代佔堆的1/5性能

-XX:Newsize   設置Yong Generation的初始值大小spa

-XX:MaxNewSize    設置Yong Generation的最大值大小.net

-XX:MaxTenuringThreshold   新生代對像晉升老年代的閾值,默認值爲15
  表示survivor區交換14次後,晉升老年代,若是設置 該值爲1,那麼每次GC後新生代對像將直接移到老年代線程

 

 

-XX:+HeapDumpOnOutOfMemoryError   若是OOM時異常能輸出堆內信息日誌

-XX:HeapDump- Path=<pathname>   指堆內存的輸出路徑blog

 


-XX:+UseSerialGC  虛擬機運行在Client模式下的默認值,Serial+Serial Old。Serial收集器

-XX:+UseParNewGC  ParNew+Serial Old,在JDK1.8被廢棄,在JDK1.7還能夠使用。

-XX:+UseConcMarkSweepGC    ParNew+CMS+Serial Old。 Mostly-Concurrent收集器(CMS)
  Mostly-Concurrent收集器(Concurrent Mark-Sweep GC):低延遲爲先!

-XX:+UseParallelGC   虛擬機運行在Server模式下的默認值,Parallel Scavenge+Serial Old(PS Mark Sweep)。 Throughput收集器(ParallelGC)

-XX:+UseParallelOldGC    Parallel Scavenge+Parallel Old。java7 或更高版本自動選擇。 Throughput收集器(ParallelGC)
  Throughput收集器(ParallelGC): 吞吐量爲先!ParallelGC開啓自適應堆調整,CMS不會

-XX:+UseG1GC    G1 GC, CMS的替代者!
  在jdk7中推出新一代垃圾回收,與CMS相比,G1具有壓縮功能,能避免碎片的問題,暫停時間 更加可控,性能整體還很是不錯

-XX:-UseAdaptiveSizePolicy   關閉自適應堆調整。僅當使用ParallelGC 時使用

-XX:+UseCMSCompactAtFullCollection  強制進行空間碎片整理
  CMS 採用標記算法,會產生大量的空間碎片。以上參數就是強制執行一次空間碎片整理,可是空間碎片整理會引起STW。

-XX:+CMSFullGCsBeforeCompaction 配置通過幾回的FullGC進行空間碎片整理
  -XX:+CMSFullGCsBeforeCompaction=10  通過10次FGC後進行空間碎片整理,以下降STW次數

-XX:ParallelGCThreads=n     設置並行收集器收集時使用的CPU數。並行收集線程數

-XX:MaxGCPauseMillis=n   設置並行收集最大暫停時間

-XX:GCTimeRatio=n  設置垃圾回收時間佔程序運行時間的百分比。公式爲1/(1+n)

-XX:+CMSIncrementalMode   設置爲增量模式。適用於單CPU狀況。

 

 

-XX:+PrintGCDetails   能夠 打印更多有價值的垃圾收集信息

-XX:+PrintTenuringDistribution   GC日誌中打印晉升分佈

-Xloggc:<filename>  能夠將垃圾收集的統計數據直接輸出到文件
  -Xloggc:d:/gc.log  將日誌輸出至d:/gc.log

-XX:ErrorFile   能夠設置hs_err_pid<pid>.log 錯誤日誌文件的路徑名   當jvm 因導致錯誤而崩潰時,會生成錯誤日誌,名爲hs_err_pid<pid>.log ,這裏的<pid> 是崩潰jvm 進程的id.默認生成在jvm 啓動目錄下

相關文章
相關標籤/搜索