2013-10-30 16 views
0

我們監控JBOSS應用程序的最後幾天,看到線程數從4000到6000.昨天,所有的突然它下降到600-800範圍,並指向請注意,我們沒有在JBOSS或JVisualVM中進行任何配置更改。 Live Peak線程數約爲6200。 現在按圖線程計數在600-800範圍內。在JVisualVM線程數急劇減少,沒有任何變化配置問題

是否有突然減少計數的特殊原因? 有在分等級談這樣的細節的特別的導遊嗎? 線程數突然增加的可能根源是什麼? GC是否在這種情況下進入圖片?

謝謝。

回答

0

是否有突然減少計數的特殊原因?

很有可能您正在使用緩存線程池。這些超時時間不是很忙,你可以看到很多(我的意思是數十個線程)立即死亡。有更多的線程比CPU通常不是一個好主意恕我直言,甚至600-800是瘋了。恕我直言。

有沒有特別的嚮導在分級別談這種細節?

在那裏是一個非常高的數字線程的系統中,這是通常的情況下,因爲沒有人去關注那些線程的數量正在使用或擔心自己在做什麼或是否真正需要它們。我懷疑沒有人可以解釋爲什麼你需要這麼多的線程。

線程數突然增加的可能根源是什麼?

這是您需要查看堆棧轉儲和線程名稱以瞭解他們在做什麼的地方,但最有可能存在緩存線程池或兩個線程數暫時高峯的地方。

GC是否在這種情況下進入圖片?

它不會導致問題,但會導致更多的線程減慢獲取所有線程以執行GC所需的安全點所需的時間。通過數千個線程,您可以看到GC花費更多時間等待線程達到安全點,而不是實際清理垃圾。