zoukankan      html  css  js  c++  java
  • 系统卡死看内存一直占满(used)过高的误解

    最近个人负责的系统总是卡死,查日志有内存溢出的情况,网上搜索总结下:

    1、第一种情况,装日志文件的空间满了,怎么点都不会打日志,就以为系统挂了,可用df -h看看具体使用情况。

     2、第二种就是内存不断的增加,某时刻要执行的功能需要的内存很多,但是系统无法一下释放那么多空间就会内存溢出。 最初自己的处理办法就是万能重启。

    后来用echo 3 > /proc/sys/vm/drop_caches 这个方法释放了内存,但是这个方法的影响还在学习补充中。

    刚开始以为used过多就会有问题,其实不然,网上找了点资料学习了下。

    资料:

    在Linux中经常发现空闲内存很少,似乎所有的内存都被系统占用了,表面感觉是内存不够用了,其实不然。这是Linux内存管理的一个优秀特性,在这方 面,区别于 Windows的内存管理。主要特点是,无论物理内存有多大,Linux 都将其充份利用,将一些程序调用过的硬盘数据读入内存,利用内存读写的高速特性来提高Linux系统的数据访问性能。

    Linux 的这一特性,主要是利用空闲的物理内存,划分出一部份空间,做为 cache 和 buffers ,以此提高数据访问性能。

    Linux 优先使用物理内存,当物理内存还有空闲时,linux是不会施放内存的,即时占用内存的程序已经被关闭了(这部分内存就用来做缓存了)。也就是说,即时你有2G的内存,用过一段时间后,也会被占满。这样做的好处是,启动那些刚开启过的程序、或是读取刚存取过得数据会比较快,对于服务器很有好处。

    一路成长,记录分享,内存调优还在学习中,后续继续记录。

  • 相关阅读:
    证明三个简单数学问题~(≧▽≦)/~啦啦啦
    计算时间复杂度
    字符三角形(循环做法)
    luogu Peter的烟
    c++一本通1000
    luogu最长连号
    luogu子数整数
    luogu三角函数
    (因更改文件夹造成)anaconda prompt 提示系统找不到指定的路径
    echarts之树形图改变节点之间连线颜色以及结点的颜色
  • 原文地址:https://www.cnblogs.com/crazycomputers/p/11544226.html
Copyright © 2011-2022 走看看