2016-09-22 61 views
2

我的應用程序垃圾收集器用於頻繁運行一個主要,也許一天一次。但它突然停止工作。現在已經達到90%,我不得不幾次重啓應用程序。 這是在生產環境中,我允許做的是讀取日誌並通過提供的UI查看JVM狀態。JVM主要垃圾收集器不能運行數月

我做的另一個觀察是過去3個月,前2個月裏沒有小的垃圾收集,但有很多專業。上個月沒有主要收藏品,但有許多次要收藏品。

+0

根據主要垃圾收集是否發生,您認爲您的應用程序「正常工作」或「無法正常工作」?還有90%的是什麼?最大內存?那麼爲什麼還有10%的時候你需要重新啓動你的應用程序呢? – Holger

+0

發佈您的虛擬機選項 –

回答

2

也許它從來沒有做一個主要的集合,因爲你是在它有機會之前重新啓動應用程序。

如果年輕的空間是合理的尺寸,你應該得到很多小的收藏。

如果您只是獲得主要收藏,則很有可能您的JVM未正確調整。我會嘗試刪除儘可能多的GC調整參數,只添加每個如果你知道它有幫助。設置太多調整參數是獲得奇怪行爲的好方法。