西数超哥博客
运维经验教程分享

Linux服务器如何释放物理内存

Linux下频繁存取文件时,物理内存可能会被耗尽,当程序结束后,内存不会释放,而是一直作为cache。之前我们前边的文章《linux内存命令free

》以及文章《linux的free命令详解-内存是拿来用的不是拿来看的》就针对linux服务器内存管理机制做了一个详细的介绍说明。linux缓存有dentry,buffer cache,page cache。Dentry用来加速文件路径名到inode的转换;buffer cache加速磁盘块的读写;page cache加速inode的读写。缩短IO调用时间。

下面简单说下一些物理内存释放方法:
1.释放page cahce

 echo 1 > /proc/sys/vm/drop_caches

2.释放dentry和inode

echo 2 > /proc/sys/vm/drop_caches

3.释放page cache,dentry,inode

 echo 3 > /proc/sys/vm/drop_caches

执行结果如下:

[root@Master vm]# free  -m
             total       used       free     shared    buffers     cached
Mem:           498        491          6          0         62        195
-/+ buffers/cache:        232        265
Swap:            0          0          0
[root@Master vm]# echo 3  > /proc/sys/vm/drop_caches
[root@Master vm]# free  -m
             total       used       free     shared    buffers     cached
Mem:           498        255        242          0          1         30
-/+ buffers/cache:        223        274

在释放内存前,最好先允许sync,强制将系统正在处理的page cahce,dentry,inode写入磁盘。

转载请注明:西数超哥博客www.ysidc.top» Linux服务器如何释放物理内存

https://www.ysidc.top 西数超哥博客,数据库,西数超哥,虚拟主机,域名注册,域名,云服务器,云主机,云建站,ysidc.top

赞(0)
声明:本站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,若涉及侵权请及时告知,将会在第一时间删除。本站原创内容未经允许不得转载:西数超哥博客 » Linux服务器如何释放物理内存