CentOS,清理缓存(drop_caches)

读写文件时,Linux内核为了提高读写效率与速度,会将文件在内存中进行缓存,这就是Cache Memory(缓存内存)。
即使程序运行结束后,Cache Memory也不会自动释放。这就会导致程序频繁读写文件后,可用物理内存会很少。
其实这缓存内存(Cache Memory)在你需要使用内存的时候会自动释放,所以不必担心没有内存可用。
如果你希望手动去释放Cache Memory(缓存内存)的话也是有办法的。

cat /proc/sys/vm/drop_caches
0 //默认是0;1-清空页缓存;2-清空inode和目录树缓存;3-清空所有缓存

大多数GNU Linux都是默认开启了缓存机制的,查看配置文件 cat /proc/sys/vm/drop_caches 若为0的话,则表示开启了缓存机制的,这种机制在一直运行某个服务的时候非常有效,便于服务本身的快速读取,而作为桌面用户来说,打开的程序并不那么单一,所以桌面用户还是建议设置此配置文件为1,及时对系统缓存进行清理,释放空间以供其它程序使用。

[[email protected] ~]# sync //注意:在清空缓存之前使用sync命令同步数据到磁盘
[[email protected] ~]# free -m
             total       used       free     shared    buffers     cached
Mem:         15898       3029      12869          0        191       1064
-/+ buffers/cache:       1772      14125
Swap:        31999          0      31999
[[email protected] ~]# echo 3 > /proc/sys/vm/drop_caches
[[email protected] ~]# free -m //发现缓存明显减少了
             total       used       free     shared    buffers     cached
Mem:         15898       1770      14128          0          1         30
-/+ buffers/cache:       1738      14160
Swap:        31999          0      31999

清理缓存脚本:

#!bin/bash

sync

sync

echo 3 > /proc/sys/vm/drop_caches

时间: 2024-10-26 05:57:18

CentOS,清理缓存(drop_caches)的相关文章

centos清理缓存

释放网页缓存(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_caches 原文地址:https://www.cnblog

centos 清理内存缓存

读写文件时,Linux内核为了提高读写效率与速度,会将文件在内存中进行缓存,这就是Cache Memory(缓存内存).即使程序运行结束后,Cache Memory也不会自动释放.这就会导致程序频繁读写文件后,可用物理内存会很少.其实这缓存内存(Cache Memory)在你需要使用内存的时候会自动释放,所以不必担心没有内存可用.如果你希望手动去释放Cache Memory(缓存内存)的话也是有办法的. 清理缓存(drop_caches)的官方文档:http://www.kernel.org/d

Linux 查看进程、清理缓存、查看磁盘空间、查看宽带的命令

一.查看进程 查看所有的进程命令:ps 查看指定的进程命令:ps -ef|grep java (java 指的是服务名称) 结束进程命令:kill -9  9028 (9028指的是PID) 二.清理缓存 查看缓存的命令:free -m 清理缓存的命令: echo 1 > /proc/sys/vm/drop_caches echo 2 > /proc/sys/vm/drop_caches echo 3 > /proc/sys/vm/drop_caches 三.查看磁盘空间 df -h 四

iOS开发-清理缓存功能的实现

移动应用在处理网络资源时,一般都会做离线缓存处理,其中以图片缓存最为典型,其中很流行的离线缓存框架为SDWebImage. 但是,离线缓存会占用手机存储空间,所以缓存清理功能基本成为资讯.购物.阅读类app的标配功能. 今天介绍的离线缓存功能的实现,主要分为缓存文件大小的获取.删除缓存文件的实现. 获取缓存文件的大小 由于缓存文件存在沙箱中,我们可以通过NSFileManager API来实现对缓存文件大小的计算. 计算单个文件大小 +(float)fileSizeAtPath:(NSStrin

0122 ---清理缓存

IOS清理缓存的几种方法,有需要的朋友可以参考下. - (long long) fileSizeAtPath:(NSString*) filePath{ NSFileManager* manager = [NSFileManager defaultManager]; if ([manager fileExistsAtPath:filePath]){ return [[manager attributesOfItemAtPath:filePath error:nil] fileSize]; } r

CVS清理缓存

通过在 <script type="text/javascript" src="/MapTest/gis/dwgis.js?0.0.1"></script> 加上版本号,来实现清理缓存.

iOS清理缓存的几种方法

iOS清理缓存的几种方法,有需要的朋友可以参考下: 1.计算文件大小: - (long long) fileSizeAtPath:(NSString*) filePath{ NSFileManager* manager = [NSFileManager defaultManager]; if ([manager fileExistsAtPath:filePath]){ return [[manager attributesOfItemAtPath:filePath error:nil] file

iOS 清理缓存功能实现第一种方法

1 添加一个提示框效果导入第三方MBProgressHUD #import "MBProgressHUD+MJ.h" 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 <br><br>/**  *  清理缓存第一种方法  */ -(void)clearCache { dispatch_async(                dispatch_get_global_queue(DISP

Session脏检查及清理缓存机制

今天看hibernate书,看到"理解Session的缓存"这一张脏检查及清理缓存的机制后,突然明白程序中session并非一定要执行update()方法.没有执行update()方法,对象仍会与数据库进行数据交互. Session脏检查及清理缓存机制: Session缓存中对象的属性每次改变时,Session不会立即清理缓存及执行Update SQL,而是会在特定时间清理缓存(执行相应的sql),提交事务. 清理缓存时,会相应的改变对象的状态. Java对象在内存中有四个状态:临时状