1、簡介
1.1 介紹
很多時候,服務器 負載 很高(執行操作 很慢),很多 原因 造成 這種 現象(內存不足 就是其中之一);此文 主要 關於 內存的 查看、釋放 相關 知識
1.2 操作 系統
-
## 本文 使用 CentOS 7
-
# cat /etc/redhat-release
-
CentOS Linux release 7.0.1406 (Core)
2、內存 信息
2.1 獲取 內存信息
-
-
total used free shared buffers cached
-
Mem: 979 261 717 6 0 74
-
-/+ buffers/cache: 186 793
-
Swap: 2079 0 2079
2.2 信息 解析
-
Mem:物理內存 統計
-
- /+ buffers/cache:物理內存 緩存 統計
-
Swap:硬盤 交換分區 統計
2.2.1 物理內存 統計
-
total:總內存
-
used:已使用的內存(包含 shared、buffers、cached)
-
free:未分配的內存
-
shared:共享內存
-
buffers:塊設備的讀寫緩沖區
-
cached:文件系統的cache
2.2.2 物理緩存 統計
-
used:該數值 為 物理內存 行數值計算或者(used - buffers - cached)
-
free:該數值 為 物理內存 行數值計算或者(free + buffers + cached)
2.2.3 交換分區 統計
暫不做 介紹
3、內存 釋放
調整/proc/sys/vm/drop_caches來釋放內存(/proc是一個虛擬文件系統,我們可以通過對它的讀寫操作做為與kernel實體間進行通信的一種手段;可以通過修改/proc中的文件,來對當前kernel的行為做出調整)
3.1 刷新 緩沖區
某些 情況下,我們 必須停止系統,此時 可以 運行 sync 命令以確保文件系統的完整性;sync 命令將所有未寫的系統緩沖區寫到磁盤中,包含已修改的 i-node、已延遲的塊 I/O 和讀寫映射文件
-
## 一般刷兩次
-
# sync && sync
3.2 釋放 內存
-
## /proc/sys/vm/drop_caches 默認值 為 0
-
# echo 3 > /proc/sys/vm/drop_caches
轉載於:https://blog.51cto.com/11495268/2384147