今天為大家分享檢視記憶體的指令。
free指令
(推薦教學:linux教學)
free 指令顯示系統使用和空閒的記憶體情況,包括實體記憶體、互動區記憶體(swap)和核心緩衝區記憶體。
很清楚地顯示出了總記憶體多少,已使用多少,還剩下多少。這裡可以看到Swap的used已使用了811Mb,伺服器上跑了一個多執行緒下載音訊的進程,實體記憶體已經不夠用了,所以從磁碟中虛擬出一部分的記憶體。當然我們可以使用free -g、free-h來查看,只不過展示的內存單位不一樣,free -h會以便於閱讀的單位形式展示內存大小。
物理記憶體和Swap交換區
當物理記憶體快被耗盡時,系統並沒有崩潰,而是拿swap做臨時內存,當兩者都耗盡,系統OutofMemory
物理記憶體到達峰值,系統中可能一些不常用的進程記憶體佔用被踢到swap區
當Mem區的資源進行釋放時,被移到swap的記憶體並不會全部回來的,隨著系統或程式的喚醒才會慢慢回到mem區
Swap是記憶體不夠時磁碟虛擬出來的內存,磁碟主要是I/O等級的操作並不是系統核心層級的操作,處理速度跟Mem區不是一個等級
槍打出頭鳥
生產環境伺服器上一般都會部署很多個服務,當收到內存不足警告的時候,我們首先想到的就是看看哪個進程佔用記憶體最多,我們可以執行如下指令,這個指令可查看各個進程記憶體的使用情況。
ps -eo pmem,pcpu,rss,args | sort -k 1 -r | less
如下圖所示,第一列為進程佔用的記憶體百分比,可以看到哪些應用程式佔的記憶體比較多,用於排查問題:
top指令排查記憶體
top 指令查看系統的即時負載, 包含行程、CPU負載、記憶體使用等;直接輸入top指令
相關推薦:php培訓
#以上是如何查看linux伺服器的記憶體使用情況的詳細內容。更多資訊請關注PHP中文網其他相關文章!