服务器上运行的东西很少,但是内存却被吃光问题分析与解决
关于系统缓存过高,占用掉几乎所有RAM问题剖析
1.系统缓存存在的意义:
由于系统访问内存的速度远远大于访问硬盘的速度,故系统引入了缓存机制去更好的更高效率的去访问某些程序所需要的数据。
2.系统缓存之文件缓存:
当系统打开文件之后,为了之后更加快速的查询或复制,他会考虑将这些文件放置到自己的内存中,如果文件被打开和被查询的越多,内存占用就越来越多的积累,这样文件缓存就会耗用掉很大一部分的RAM。
3.对于公司级的服务器,长时间的运行某些传送文件,读取文件等的操作,重启的次数很少,久而久之,这些操作就会将RAM吃掉导致最终服务器假死
针对这样的情况,我们可以做的:
1、定期的重启服务器
2、限制系统文件缓存大小的阀值 -- 推荐方法
PS:
其实在我自己的观察和试验中,有这样的结论:
对于RAM比较小的(4G、6G)Server,系统会对于缓存进行自动释放(好像是到RAM的90%的时候,如果有新的程序要占用内存是,系统会自动对这些缓存做释放回收),而对于大的RAM,系统会无限制的让缓存占用内存
Impossible = I'm possible
Don't be the same, be better. Just do it.
You'll be there.

浙公网安备 33010602011771号