`

CentOS 释放内存

 
阅读更多

内存占用原因
当读写文件的时候,Linux内核为了提高读写性能与速度,会将文件在内存中进行缓存,这部分内存就是Cache Memory.
即使你的程序运行结束后,Cache Memory也不会自动释放.这就会导致你在Linux系统中程序频繁读写文件后,你会发现可用物理内存会很少.

 

处理方法一
Cache Memory在你需要使用内存的时候会自动释放,所以你不必担心没有内存可用.

处理方法二
如果你希望手动去释放Cache Memory也是有办法的:
使用 sync;sync;echo 1 > /proc/sys/vm/drop_caches 命令.

效果很显著.


命令解释
sync命令的作用是将有关文件系统的存储器常驻信息送入物理介质内.
为确保可靠起见,应执行两遍sync命令,这是因为sync命令完成时,并不保证信息实际写到了磁盘上.

 

清空 pagecache
echo 1 > /proc/sys/vm/drop_caches
sysctl -w vm.drop_caches=1命令与上述命令效果相同

 

清空所有缓存(pagecache、dentries 和 inodes)
echo 3 > /proc/sys/vm/drop_caches
sysctl -w vm.drop_caches=3命令与上述命令效果相同

 

关于drop_caches的官方说法
To use /proc/sys/vm/drop_caches, just echo a number to it.
 
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

This is a non-destructive operation and will only free things that are completely unused. Dirty objects will continue to be in use until written out to disk and are not freeable. If you  run "sync" first to flush them out to disk, these drop operations will tend to free more memory.

分享到:
评论

相关推荐

    Centos7内存释放脚本

    Centos7内存释放脚本

    centos清理swap交换区内存

    SWAP空间(或称为SWAP分区)是在硬盘上预留的一块区域,用于当物理内存(RAM)不足时,操作系统可以将一部分暂时不用的数据移到SWAP空间中,从而释放出更多的物理内存供其他程序使用。这种机制有助于提高系统的稳定...

    CentOS7清理yum缓存和释放内存方法.pdf

    CentOS7清理yum缓存和释放内存方法 CentOS7清理yum缓存和释放内存方法是Linux系统中非常重要的一部分。yum(Yellow Dog Updater, Modified)是一个基于RPM包管理器的命令行包管理器,用于安装、卸载、升级和管理RPM...

    实现释放CentOS系统内存的Shell脚本分享

    主要介绍了实现释放CentOS系统内存的Shell脚本分享,本文对一些小内存的VPS特别有用,需要的朋友可以参考下

    dotNet Core 内存占用过高的解决方案.docx

    dotNet Core 内存占用过高的解决方案dotNet Core 内存占用过高的解决方案

    centos_mysql

    通过上述优化,我们可以显著提升CentOS系统上运行的MySQL数据库的性能,包括网络连接的效率、内存的高效利用以及I/O操作的优化。不过,调整这些参数需要根据实际的硬件配置和工作负载进行,不同的环境可能需要不同的...

    linux centos 5.5 安装说明

    - swap分区:根据物理内存的两倍设置大小,例如2GB内存则设为4000MB,交换分区有助于提升系统性能。 - 根目录`(/)`分区:选择"使用全部剩余空间",文件系统类型也是"ext3",用于存放系统主要文件。 9. **确认分区...

    Linux 内存释放命令详解

    我使用的是CentOS 6.5 ,由于卸载Solr 后发现内存占用挺多的,我想释放一下内存,就查阅了一些资料,分享给大家: 1.free -m 查看内存的使用情况,-m表示单位是兆 2.echo 1 > /proc/sys/vm/drop_caches 以上内容...

    centos5.x安装oracle11g

    - 通过管理自动化释放关键人员进行战略任务。 #### 二、准备工作与环境配置 为了确保 Oracle 11g 在 CentOS 5.3 上的顺利安装与运行,需要完成一系列的前期准备工作。 ##### 1. 更新 CentOS 操作系统 安装 Oracle ...

    MySQL OOM(内存溢出)的解决思路

    OOM全称”Out Of Memory”,即内存溢出。 内存溢出已经是软件开发历史上存在了近40年的“老大难”问题。...如果已经出现OOM,则可以通过dmesg命令查看,CentOS7版本以上支持 -T选项,能将时间戳转成时

    centos7.5线上系统基本优化.docx

    减少重试次数可以更快地释放资源,但可能增加连接失败的风险。 - **net.ipv4.tcp_tw_recycle=1**: 启用TCP TIME_WAIT快速回收机制,有助于减少TIME_WAIT状态连接的数量,尤其是在高并发场景下更为有效。 #### 结论 ...

    Centos7操作命令2.01

    当虚拟机启动时,这些资源会被分配给虚拟机使用,而在关闭时则释放回物理机。因此,确保物理机性能足够强大以支持虚拟化操作至关重要。 文档中虽然未列出具体的操作命令,但可以预见其内容可能包括安装过程、系统...

    centos 常用命令

    - **解释:** `sync`命令会强制所有未写入磁盘的数据写入磁盘,而`echo 3 > /proc/sys/vm/drop_caches`则会清除所有缓存,包括页面缓存、dentries和inodes缓存,这有助于释放内存空间。 **6. 查看Linux版本** - **...

    CentOS7.0 64位 Apache2.4 PHP5.4镜像使用手册

    - 使用jemalloc来优化MySQL的内存管理,提高了数据库性能。 - 提供了一个交互式的Apache虚拟主机添加工具,便于快速设置网站。 - 菜单式FTP账户管理脚本,可以轻松创建FTP虚拟用户。 - 支持在线升级MySQL、PHP、...

    操作系统实验-内存管理.doc

    此外,学生还需要在Linux环境下利用`malloc()`和`free()`系统调用来实现内存的动态分配和回收,确保能够正确地分配内存给变量、释放内存以及计算剩余未使用内存的大小。 实验原理部分介绍了虚拟存储系统的关键特性...

    linux 内存清理/释放命令总结

    本文介绍了linux 内存清理/释放命令,具体如下: 1.清理前内存使用情况 free -m 2.开始清理  echo 1 > /proc/sys/vm/drop_caches 3.清理后内存使用情况 free -m 4.完成! 查看内存条数命令: dmidecode |...

    centos 系统管理 整理版

    - **虚拟内存概念**:现代操作系统普遍采用虚拟内存技术,通过将部分不常用的数据临时存放到磁盘上,以释放更多的物理内存空间给活跃的应用程序使用。Linux系统通过交换分区实现虚拟内存功能。 - **交换分区特点**...

    安装centos7系统.docx

    在VMware中,选择“新建”并按照向导的指示配置虚拟机的硬件参数,如内存大小、CPU数量以及网络适配器类型。 在虚拟机配置完毕后,我们进入安装系统的核心步骤。在VMware中,找到并选中你刚创建的虚拟机,然后点击...

    硬盘安装linux centos6.3 构成电脑双系统

    确保释放出一段连续的未分配空间,因为Linux系统需要连续的空间来安装。不连续的空间会导致安装过程中出现错误。 完成磁盘压缩后,我们需要下载Linux CentOS 6.3的ISO镜像文件,并使用UltraISO这样的工具将其刻录到...

Global site tag (gtag.js) - Google Analytics