簡體   English   中英

如何在weblogic 12c上添加CMS GC調整

[英]how to add CMS GC tuning on weblogic 12c

我了解weblogic 12C帶有並行垃圾收集算法。 但是如何以及在何處將CMS(並發標記清除收集器,並發收集器)添加到當前的weblogic 12c中。 任何幫助表示贊賞。

我從Oracle文檔中找到了答案。 我要粘貼在這里,因為它會幫助其他人。

使用Sun JDK調整垃圾收集使用Sun的JDK時,調整垃圾收集性能的目標是減少執行完整垃圾收集周期所需的時間。 您不應該嘗試調整JVM以最大程度地減少完整垃圾收集的頻率,因為這通常會導致最終的強制垃圾收集周期,這可能需要花費整整幾秒鍾的時間才能完成。

在生產服務器的整個生命周期內實現最短垃圾收集時間的最簡單,最可靠的方法是使用具有默認收集器和並行年輕代收集器的固定堆大小,將新一代大小限制為最多總大小的三分之一堆。

對於大多數引擎層服務器,建議使用以下示例JVM設置:

 -server -Xmx1024m -XX:MaxPermSize=128m -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+UseTLAB -XX:+CMSIncrementalMode -XX:+CMSIncrementalPacing -XX:CMSIncrementalDutyCycleMin=0 -XX:CMSIncrementalDutyCycle=10 -XX:MaxTenuringThreshold=0 -XX:SurvivorRatio=256 -XX:CMSInitiatingOccupancyFraction=60 -XX:+DisableExplicitGC 

對於副本服務器,請使用示例設置:

 -server -Xmx3072m -XX:MaxPermSize=128m -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+UseTLAB -XX:+CMSIncrementalMode -XX:+CMSIncrementalPacing -XX:CMSIncrementalDutyCycleMin=0 -XX:CMSIncrementalDutyCycle=10 -XX:MaxTenuringThreshold=0 -XX:SurvivorRatio=256 -XX:CMSInitiatingOccupancyFraction=60 -XX:+DisableExplicitGC 

以上選項具有以下效果:

  • -XX:+ UseTLAB-使用線程本地對象分配塊。 這可以通過減少共享堆鎖上的爭用來提高並發性。

  • -XX:+ UseParNewGC-使用並行版本的年輕一代復制收集器以及並發的標記清除掃描收集器。 通過並行使用所有可用的CPU,可以最大程度地減少暫停時間。
    收集器與默認收集器和
    並發標記和掃描(CMS)收集器。

  • -Xms,-Xmx-在堆大小上放置邊界以提高垃圾回收的可預測性。 堆大小限制在
    副本服務器,這樣,即使完整GC也不會觸發SIP
    重傳。 -Xms設置起始大小,以防止由堆擴展引起的暫停。

  • -XX:MaxTenuringThreshold = 0-使完整的NewSize可用於每個NewGC周期,並通過不評估使用期限來減少暫停時間
    對象。 從技術上講,此設置會將所有活動對象提升到
    而不是模仿他們。

  • -XX:SurvivorRatio = 128-指定較高的幸存者比率,該比率與零期限閾值一起使用,以確保為缺席的幸存者保留很少的空間。

將這些添加到啟動weblogic服務器的JVM中,這將進入文件startWeblogicServer或startManagedWeblogicServer或setDomainENV

您可以在server / bin目錄中找到它們。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM