5
作爲一些持續維護的一部分,我們一直以1分鐘的間隔爲JVM中的所有線程定期線程轉儲。 (例如,curl http://localhost:8983/solr/admin/threaddump.jsp
)Java(Solr)線程轉儲有多昂貴?
無限期繼續這種做法的性能/其他負面影響是什麼?
作爲一些持續維護的一部分,我們一直以1分鐘的間隔爲JVM中的所有線程定期線程轉儲。 (例如,curl http://localhost:8983/solr/admin/threaddump.jsp
)Java(Solr)線程轉儲有多昂貴?
無限期繼續這種做法的性能/其他負面影響是什麼?
通常,無論應用程序如何,JVM線程轉儲都很便宜,影響較小。另一方面,Jmap -histos可能會對性能造成很大影響。我在維護中工作,我們做了很多線程轉儲,從來沒有看到線程傾倒導致的直接崩潰。
每分鐘運行一次轉儲的唯一問題是信息太多。
是否將轉儲附加到單獨的文件?根據我的經驗,您必須隨着時間的推移才能查看轉儲情況,以瞭解諸如短暫鎖定爭用的情況。
我認爲在這一點上,我們只是計劃解析和寫出線程數(也許類型)到一個日誌文件,並提示大範圍的偏差。 –
關注線程,等待鎖定,如果您要嚴重鎖定爭用,那就是如何發現它。當然,一些鎖爭用是正常的。乾杯。 – KaizenSoze