一、使用jps
檢視執行緒id
二、使用jstat -gc 3331 250 20
檢視gc情況,一般比較關注perm區的情況,檢視gc的增長情況。
三、使用jstat -gccause
:額外輸出上次gc原因
四、使用jmap -dump:format=b,file=heapdump 3331
生成堆轉儲檔案
五、使用jhat或者視覺化工具(eclipse memory analyzer 、ibm heapanalyzer)分析堆情況。
六、結合**解決記憶體溢位或洩露問題。
一、使用jps
檢視執行緒id
二、使用jstack 3331
:檢視執行緒情況
GC 相關問題
1 美團經典文章 2 參考文章 3 gc 概念 4 cms gc日誌詳細介紹 5 gc root的定義 併發標記和重新標記兩個階段中間還增加了兩個階段 cms concurrent preclean start 併發預清理階段和 cms concurrent abortable preclean s...
阻塞佇列的GC問題
最近使用佇列存放資料,發生了一次gc問題,這裡記錄一下。開始使用定長阻塞佇列,程式執行正常。blockingqueuequeue new arrayblockingqueue 2000 之後再阻塞佇列中存放collection物件,出現gc。blockingqueue queue new array...
elasticsearch 頻繁GC問題處理
收到es的告警,在1小時內意外分配了碎片,從而導致集群狀態 green yellow red yellow green 頻繁切換?在此期間,es不可訪問,並且呼叫api開始返回非200的狀態碼。環境 3個主節點和3個工作節點。這種鋸尺模式的原因是,elasticsearch在執行某些操作搜尋查詢,寫...