-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 啓動目錄下