Centos 内存占用过高问题记录
in 其他折腾日记 with 0 comment

Centos 内存占用过高问题记录

in 其他折腾日记 with 0 comment

Centos 内存占用过高问题记录

前不久发现 MySQL 服务总是挂掉,检查服务器才发现是内存占用过高导致 MySQL 服务自动停止运行了,在网上搜索后发现可能是内存缓存过多,于是尝试清除缓存,使用命令如下:

# sync
# echo 3 > /proc/sys/vm/drop_caches

结果并没有让内存占用降下来,通过 top 命令和 free 命令查看,也没有发现占用内存过高的进程。甚至通过 free 命令发现 swap 都被占满了,但是又没有办法降下来。查找了很多网站和论坛都没有解决的办法,正当我一筹莫展之际,在 SCDN 上看到一篇博文,博主讲到了他使用了自动化脚本和定时任务,在程序中通过 sleep() 函数来起到延时效果,我一看,欸嘿,我自己的自动化脚本也使用了 sleep() 用来给程序延时,再往下看发现他的状况和我一样,也是内存占用过高,清除缓存没用。

请输入图片描述

该博主在自行解决过程中通过使用 ps 命令详细查看了进程的使用情况,我一瞬间茅塞顿开,想到我的自动化脚本是通过调用 firefox 打开网页来起到自动化效果的,于是使用命令查看 firefox 进程,命令如下:

# ps -ef | grep firefox

这不看不知道,一看吓一跳,满满的一屏幕进程差点让小小的 PuTTY 的窗口当场去世请输入图片描述

解决方案:通过 kill 命令杀死所有的 firefox 进程,使用命令如下:

# killall -9 firefox

结果是好的,内存占用当场就降了下来。
具体为啥,我也还不清楚,得询问询问运维的大佬。

留言: