以前就知道timer進程長久運行容易出問題,因此一直對timer進行了很長一段時間的日誌監控和數據庫記錄,大概觀察了幾個月,沒發現過問題。。。。而後就沒管理了,數據庫記錄也沒作了,昨天這問題就來了,timer是寫在單利模式裏面的,最近app要增長功能,重要的代碼又須要寫到單例的timer進程裏, 嗯快速的搞好,本地測試徹底沒問題,上傳,而後昨天心情暢快的跑出去耍了,回來就發現問題了,數據庫裏面須要自動處理的數據沒處理, 而後又增長日誌,數據庫記錄,發現個問題,日誌不正常了,沒有按照我timer設置的時間有規律的執行任務, 這部分代碼但是我以前觀察了幾個月的,運行到這個服務器上沒問題,本地運行沒問題,爲何出現這狀況了, 而後還原到以前的備份看看,發現也有這個問題, 而後看看 java進程的cup佔用有點高60%左右,之前最多百分之30%,剛纔那混亂的執行間隔時間日誌,大概問題就在這裏了,我以爲應該是這樣在timer運行時 偶爾也許timer的進程被copy了一個,這樣他的進程就會愈來愈多,cup佔用天然增大了。 而後發了個工單給客服,沒解決問題,網上找了一個方法是解決了。java
找客戶以前其餘方法嘗試了不少沒效果,個人系統是centos6.5數據庫
解決方法:升級centos 內核,重啓centos
yum install kernel -y
服務器