关于linux内存cached过高释放一例

简介:

   今天在做zabbix硬件监控的时候,老是出现段错误的提示,仔细检查发现原来是是不是我的内存不够了呢:

wKioL1Ud85-Rm7FyAADMXbK2S60458.jpg

参数说明:

total : 物理内存的总大小

used :已经使用的内容

shared:共享的内存大小

buffers:缓冲区内存:(磁盘块的读写频繁,linux内存机制做缓冲池)

cached:也是缓冲区内存(主要是在文件读写频繁的时候对文件进行缓存)

一般我们主要看free,和最后一行 buffers/cache:


具体参数可以参考,linux 内存机制。我的机器上面是做nagios监控,和图片备份,每天晚上12点会有rsync的任务执行,同步图片到这台机器上面。应该是这个问题了,频繁的读写文件,然后触发了Linxu的内存机制,系统任务频繁的读写文件,当程序停止之后。系统内存没有释放,而是当做cache的形式存在,方便下次调取。这样性能应该有所加强,但是像今天这种我又不需要,那么我就只能将他释放了:


执行操作:

wKioL1Ud-EbCZFD8AAEFDJ8eOFA529.jpg

执行命令完成之后我们可以echo 0 修改回来。

可以看到已经释放了很多内存了。


总结:我们有时候经常会遇到这个问题,尤其是Mysql服务器,经常buffers,经常会占据很多的内存,因为mysql写入操作是很频繁了,这个时候我们不用去手动释放内存,允许linux自带的内存去管理,可想而知当我们缓冲区有内存了,下次读写是不是很快了呢。今天实在暂用太多了,而且rsync也是晚上,才启动,关闭就不用浪费那么多资源










本文转自 小罗ge11 51CTO博客,原文链接:http://blog.51cto.com/xiaoluoge/1627913,如需转载请自行联系原作者
目录
相关文章
|
3天前
|
消息中间件 算法 Linux
【Linux】详解如何利用共享内存实现进程间通信
【Linux】详解如何利用共享内存实现进程间通信
|
2天前
|
Java Linux Arthas
linux上如何排查JVM内存过高?
linux上如何排查JVM内存过高?
16 0
|
6天前
|
消息中间件 存储 Unix
【探索Linux】P.15(进程间通信 —— system V共享内存)
【探索Linux】P.15(进程间通信 —— system V共享内存)
17 0
|
6天前
|
安全 Linux Python
Volatility3内存取证工具安装及入门在Linux下的安装教程
Volatility3内存取证工具安装及入门在Linux下的安装教程
Volatility3内存取证工具安装及入门在Linux下的安装教程
|
6天前
|
安全 Python Linux
Kali Linux下Volatility2.6常见问题疑难杂症-内存取证信息安全管理与评估
Kali Linux下Volatility2.6常见问题疑难杂症-内存取证信息安全管理与评估
Kali Linux下Volatility2.6常见问题疑难杂症-内存取证信息安全管理与评估
|
7天前
|
缓存 运维 算法
深入理解Linux内核的虚拟内存管理
【5月更文挑战第6天】 在现代操作系统中,尤其是类Unix系统如Linux中,虚拟内存管理是一项核心功能,它不仅支持了多任务环境,还提供了内存保护和抽象。本文将深入探讨Linux操作系统的虚拟内存子系统,包括分页机制、虚拟地址空间布局、页面置换算法以及内存分配策略。通过对这些概念的剖析,我们旨在为读者揭示Linux如何有效地管理和优化物理内存资源,并确保系统的稳定运行与高效性能。
|
消息中间件 Unix Linux
[Linux打怪升级之路]-system V共享内存
[Linux打怪升级之路]-system V共享内存
[Linux打怪升级之路]-system V共享内存
|
8天前
|
缓存 Linux
linux性能分析之内存分析(free,vmstat,top,ps,pmap等工具使用介绍)
这些工具可以帮助你监视系统的内存使用情况、识别内存泄漏、找到高内存消耗的进程等。根据具体的问题和需求,你可以选择使用其中一个或多个工具来进行内存性能分析。注意,内存分析通常需要综合考虑多个指标和工具的输出,以便更好地理解系统的行为并采取相应的优化措施。
28 6
|
11天前
|
存储 缓存 监控