echo編輯整理。歡迎添加echo微信(微信號:t2421499075)交流學習。該文章爲轉載他人文章,不支持轉載。java
文章參考資料:鼓泡學院課堂筆記微信
參數 | 含義 | 說明 |
---|---|---|
-XX:CICompilerCount=3 | 最大並行編譯數 | 若是設置大於1,雖然編譯速度會提升,可是一樣影響系統穩定性,會增長JVM崩潰的可能 |
-XX:InitialHeapSize=100M | 初始化堆大小 | 簡寫-Xms100M |
-XX:MaxHeapSize=100M | 最大堆大小 | 簡寫-Xmx100M |
-XX:NewSize=20M | 設置年輕代的大小 | |
-XX:MaxNewSize=50M | 年輕代最大大小 | |
-XX:OldSize=50M | 設置老年代大小 | |
-XX:MetaspaceSize=50M | 設置方法區大小 | |
-XX:MaxMetaspaceSize=50M | 方法區最大大小 | |
-XX:+UseParallelGC | 使用UseParallelGC | 新生代,吞吐量優先 |
-XX:+UseParallelOldGC | 使用UseParallelOldGC | 老年代,吞吐量優先 |
-XX:+UseConcMarkSweepGC | 使用CMS | 老年代,停頓時間優先 |
-XX:+UseG1GC | 使用G1GC | 新生代,老年代,停頓時間優先 |
-XX:NewRatio | 新老生代的比值 | 好比-XX:Ratio=4,則表示新生代:老年代=1:4,也就是新生代佔整個堆內存的1/5 |
-XX:SurvivorRatio | 兩個S區和Eden區的比值 | 好比-XX:SurvivorRatio=8,也就是(S0+S1):Eden=2:8, 也就是一個S佔整個新生代的1/10 |
-XX:+HeapDumpOnOutOfMemoryError | 啓動堆內存溢出打印 | 當JVM堆內存發生溢出時,也就是OOM,自動生成dump文件 |
-XX:HeapDumpPath=heap.hprof | 指定堆內存溢出打印目錄 | 表示在當前目錄生成一個heap.hprof文件 |
XX:+PrintGCDetails - XX:+PrintGCTimeStamps - XX:+PrintGCDateStamps | Xloggc:$CATALINA_HOME/logs/gc.log 打印出GC日誌 | 可使用不一樣的垃圾收集器,對比查看GC狀況 |
-Xss128k | 設置每一個線程的堆棧大小 | 經驗值是3000-5000最佳 |
-XX:MaxTenuringThreshold=6 | 提高年老代的最大臨界值 | 默認值爲 15 |
-XX:InitiatingHeapOccupancyPercent | 啓動併發GC週期時堆內存使用佔比 | G1之類的垃圾收集器用它來觸發併發GC週期,基於整個堆的使用率,而不僅是某一代內存的使用比. 值爲 0 則表示」一直執行GC循環」. 默認值爲 45. |
-XX:G1HeapWastePercent | 容許的浪費堆空間的佔比 | 默認是10%,若是併發標記可回收的空間小於10%,則不會觸發MixedGC。 |
-XX:MaxGCPauseMillis=200ms | G1最大停頓時間 | 暫停時間不能過小,過小的話就會致使出現G1跟不上垃圾產生的速度。最終退化成Full GC。因此對這個參數的調優是一個持續的過程,逐步調整到最佳狀態。 |
-XX:ConcGCThreads=n | 併發垃圾收集器使用的線程數量 | 默認值隨JVM運行的平臺不一樣而不一樣 |
-XX:G1MixedGCLiveThresholdPercent=65 | 混合垃圾回收週期中要包括的舊區域設置佔用率閾值 | 默認佔用率爲 65% |
-XX:G1MixedGCCountTarget=8 | 設置標記週期完成後,對存活數據上限爲G1MixedGCLIveThresholdPercent 的舊區域執行混合垃圾回收的目標次數 | 默認8次混合垃圾回收,混合回收的目標是要控制在此目標次數之內 |
-XX:G1OldCSetRegionThresholdPercent=1 | 描述Mixed GC時,Old Region被加入到CSet中 | 默認狀況下,G1只把10%的Old Region加入到CSet中 |
JSP併發
jinfo性能
jstat學習
jstackspa
jmap線程