3.深刻jvm內核-原理、診斷與優化-5. GC參數-cms垃圾收集器

  1. 串行收集器併發

  2. 並行收集器.net

    ···線程

    ···3d

  3. cms收集器code

    併發與並行blog

  4. GC參數整理內存

    -XX:+UseSerialGC:在新生代和老年代使用串行收集器
     -XX:SurvivorRatio:設置eden區大小和survivior區大小的比例
     -XX:NewRatio:新生代和老年代的比
     -XX:+UseParNewGC:在新生代使用並行收集器
     -XX:+UseParallelGC :新生代使用並行回收收集器
     -XX:+UseParallelOldGC:老年代使用並行回收收集器
     -XX:ParallelGCThreads:設置用於垃圾回收的線程數
     -XX:+UseConcMarkSweepGC:新生代使用並行收集器,老年代使用CMS+串行收集器
     -XX:ParallelCMSThreads:設定CMS的線程數量
     -XX:CMSInitiatingOccupancyFraction:設置CMS收集器在老年代空間被使用多少後觸發
     -XX:+UseCMSCompactAtFullCollection:設置CMS收集器在完成垃圾收集後是否要進行一次內存碎片的整理
     -XX:CMSFullGCsBeforeCompaction:設定進行多少次CMS垃圾回收後,進行一次內存壓縮
     -XX:+CMSClassUnloadingEnabled:容許對類元數據進行回收
     -XX:CMSInitiatingPermOccupancyFraction:當永久區佔用率達到這一百分比時,啓動CMS回收
     -XX:UseCMSInitiatingOccupancyOnly:表示只在到達閥值的時候,才進行CMS回收

  5. 總結:get

    cms相對來講有如下特色:
     一、能保證系統的響應時間,減小垃圾收集時的停頓時間,對一些作監控的應用優其重要。
     二、Cms採用Mark-Sweep會對堆產生空間碎片,可是能夠指定在通過幾回垃圾回收後再作總的空間整理
     三、雖然fgc回收時間相對比並行收集器少,但總的回收次數確是多的,因此會致使系統停頓次數變多,致使吞吐量降低。
相關文章
相關標籤/搜索