1、简介
1.1 介绍
很多时候,服务器 负载 很高(执行操作 很慢),很多 原因 造成 这种 现象(内存不足 就是其中之一);此文 主要 关于 内存的 查看、释放 相关 知识
1.2 操作 系统
- ## 本文 使用 CentOS 7
- # cat /etc/redhat-release
- CentOS Linux release 7.0.1406 (Core)
2、内存 信息
2.1 获取 内存信息
- # free -m
- total used free shared buffers cached
- Mem: 979 261 717 6 0 74
- -/+ buffers/cache: 186 793
- Swap: 2079 0 2079
2.2 信息 解析
- Mem:物理内存 统计
- -/+ buffers/cache:物理内存 缓存 统计
- Swap:硬盘 交换分区 统计
2.2.1 物理内存 统计
- total:总内存
- used:已使用的内存(包含 shared、buffers、cached)
- free:未分配的内存
- shared:共享内存
- buffers:块设备的读写缓冲区
- cached:文件系统的cache
2.2.2 物理缓存 统计
- used:该数值 为 物理内存 行数值计算或者(used - buffers - cached)
- free:该数值 为 物理内存 行数值计算或者(free + buffers + cached)
2.2.3 交换分区 统计
暂不做 介绍
3、内存 释放
调整/proc/sys/vm/drop_caches来释放内存(/proc是一个虚拟文件系统,我们可以通过对它的读写操作做为与kernel实体间进行通信的一种手段;可以通过修改/proc中的文件,来对当前kernel的行为做出调整)
3.1 刷新 缓冲区
某些 情况下,我们 必须停止系统,此时 可以 运行 sync 命令以确保文件系统的完整性;sync 命令将所有未写的系统缓冲区写到磁盘中,包含已修改的 i-node、已延迟的块 I/O 和读写映射文件
- ## 一般刷两次
- # sync && sync
3.2 释放 内存
- ## /proc/sys/vm/drop_caches 默认值 为 0
- # echo 3 > /proc/sys/vm/drop_caches
转载于:https://blog.51cto.com/11495268/2384147