我們公司是用Java開發webmail,server端使用類似Tomcat作法
昨天我們公司的webmail server主機loading突然變大
檢查一下發現Java的部分,記憶體使用量衝到了1.3G。
雖然我是開發webmail的,但對這種系統性能調校完全初心,
後來有看到可以使用jconsole去遠端監看資源耗費的情況,
但還是不知道該如何著手和觀察,
故有以下幾個問題想請教:
1. 我該如何知道或觀察目前所有連線(thread)的記憶體使用、cpu使用、物件資源
甚至程式執行的狀況。
2. 當系統負載過高時(指java耗費過多資源),是否有緊急處理的機制? 因為像是昨天
負載變高導致寄信出現狀況,當然這和寫法有關。
3. jconsole的方法會讓server去listen某個port,想請問這樣會不會導致server負載過大
一般會長期開著嗎?
另外最近也在找這方面的書,有看到一本 直達Java虛擬機器 好像不錯
不知道有沒有這方面資料能分享呢?
不管是基礎或工具都OK
感謝大大閱讀文章