記一次JVM調優-後續跟蹤優化

之前對JVM優化後,tomcat只能堅持一天,到了下午5點30左右,年老代上升特別快,CMS回收速率遠小於年老代的增長速率,不到30分鐘年老代就達到了極限,然後Full GC,然後 stop the world。看來之前的優化還存在問題。
翻閱了一些資料後,又開始繼續優化。
這次的優化有如下幾點:

  1. 設定SurvivorRatio的比例,由原來的1G改為731M。
  2. 去掉DisableExplicitGC引數
  3. 增加ExplicitGCInvokesConcurrent引數。
  4. 設定MaxTenuringThreshold=30

這是具體的修改前後對比,左邊是修改前,右邊是修改後。

主要修改是去掉了DisableExplicitGC,增加ExplicitGCInvokesConcurrent引數。
通過VisualVM檢視,發現年老代就算沒達到70%也在進行CMS回收:
這裡寫圖片描述

檢視gc.log可看到CMS相關的操作:
這裡寫圖片描述

圖片顯示不全,後面一部分是remark的時間,單獨截圖如下:
這裡寫圖片描述

可以看到remark時間還是挺短的。
先寫到這,再跟蹤一段時間看看實際情況如何。