1. cached主要負責緩存文件使用, 日誌文件過大形成cached區內存增大把內存佔用完 .node
Free中的buffer和cache:(它們都是佔用內存):
buffer : 做爲buffer cache的內存,是塊設備的讀寫緩衝區
cache: 做爲page cache的內存, 文件系統的cache
若是 cache 的值很大,說明cache住的文件數不少。緩存
Linux 內存管理作了不少精心的設計,除了對dentry進行緩存(用於VFS,加速文件路徑名到inode的轉換),還採起了兩種主要Cache方式:Buffer Cache和Page Cache,目的就是爲了提高磁盤IO的性能。從低速的塊設備上讀取數據會暫時保存在內存中,即便數據在當時已經再也不須要了,但在應用程序下一次訪問該數據時,它能夠從內存中直接讀取,從而繞開低速的塊設備,從而提升系統的總體性能。而Linux會充分利用這些空閒的內存,設計思想是內存空閒還不如拿來多緩存一些數據,等下次程序再次訪問這些數據速度就快了,而若是程序要使用內存而系統中內存又不足時,這時不是使用交換分區,而是快速回收部分緩存,將它們留給用戶程序使用。性能
所以,能夠看出,buffers/cached真是百益而無一害,真正的壞處可能讓用戶產生一種錯覺——Linux耗內存!其實否則,Linux並無吃掉你的內存,只要還未使用到交換分區,你的內存所剩無幾時,你應該感到慶幸,由於Linux 緩存了大量的數據,也許下一次你就從中受益!設計
二、手動釋放cached
釋放前最好sync一下,防止丟數據日誌
To free pagecache: echo 1 > /proc/sys/vm/drop_caches內存
To free dentries and inodes: echo 2 > /proc/sys/vm/drop_caches內存管理
To free pagecache, dentries and inodes: echo 3 > /proc/sys/vm/drop_cachesclass