Clean Linux memory cache (manual release)
當監控系統之記憶體告警時,
撇除服務高峰以外需要手動進行處理,
以下是清理緩存,並且清理了哪一些緩存的筆記。
頁面緩存清除指令
sudo sh -c 'echo 1 >/proc/sys/vm/drop_caches'
目錄和索引節點清除指令
sudo sh -c 'echo 2 >/proc/sys/vm/drop_caches'
pagecache、dentries 和 inode 清除指令
sudo sh -c 'echo 3 >/proc/sys/vm/drop_caches'
#查看記憶體
free -h
total 記憶體總量
used 已經使用的記憶體量
free 空閑的記憶體量
shared 多個進程共享的記憶體總量
buffers 緩存(目錄、inode…等)
cached 緩存(正在使用的文件…等)
drop_caches的值可以是0–3之間的數字
0:不釋放(系統默認值)
1:釋放頁面緩存
2:釋放dentries和inodes
3:釋放所有緩存
頁面緩存(Page Cache):
- 功能:用於緩存最近訪問的檔案數據的副本,包括文件內容和檔案屬性。
- 作用:提高後續對檔案的讀取速度,減少對檔案系統的訪問次數,從而提高系統性能。
目錄和索引節點(Directory and Index Nodes):
- 功能:用於存儲文件和目錄的結構化信息,包括檔案名稱、檔案大小、擁有者、權限等。
- 作用:維護檔案系統的結構和層次關係,提供文件和目錄之間的映射關係。
pagecache、dentries 和 inode:
- pagecache:用於緩存文件的數據,包括文件內容。
- dentries:用於緩存目錄中的檔案名稱和對應的索引節點的映射關係。
- inode:包含有關文件或目錄的元數據信息,如文件大小、擁有者、權限等。
- 作用:共同協作,使檔案系統能夠有效地組織和存儲檔案數據,提供快速查詢和訪問。