被測系統突然無法正常登陸,是什么造成的?首先,我試著打開百度等頁面,發現正常,網絡沒有存在問題,然后查看一下日志看是不是出現了報錯。
這里就需要用到cd、tail這兩個基本命令
cd進入日志所在的目錄
tail用來看文件尾部內容,默認顯示最后10行
-f查看文件尾部追加的內容,一般來說可以用在日志中顯示實時刷新的最新日志
-n和數字組合,主要用以查看文件尾部多少行的內容
例子:
tail -fn 1000 ***.log
日志中很明顯出現了OutOfMemoryError: Java heap space這個報錯,簡單理解內存出錯,還不是很明白,于是問了一下開發,他說是內存不夠了,讓我看一下內存。
查看內存就需要用到free
free查看內存
-b就顯示的內存是以b為單位
-k以KB為單位
例子:
free ?-m
-m以mb為單位
-s和數字組合,表示隔幾秒顯示一次當前的內存使用情況
例子:
free -s 5
然后我就查看了一下內存結果如下圖
空閑的內存只有94
研發教了我一下,還可以啟動JDK內置軟件jvm,它可以監控我們的進程,如下圖可以很直觀的看出堆內存的使用情況。
進入jdk所在目錄,進入bin目錄,雙擊運行jvm
下面還可以看到有系統、觸發器、線程、診斷命令等。
這次的問題OutOfMemoryError: Java heap space指的就是tenured Gen.
用JVM就可以直觀的看出內存使用率。
因為的測試環節是部署在虛擬機的centOS上的,所以分析了一下主要就是centOS的內存不足,需要進行擴容。
Jvm等下次我了解的更多了,再更深入的寫關于它的知識。