• linux系统内存使用率飙高到90%


    free -gh 显示的物理内存是7G

     

    1、ps aux | head -1;ps aux |grep -v PID |sort -rn -k +4 | head -20 查找到占用内存高的前20个进程

    2、pidstat -r -p $pid 1 查看各活动进程的内存使用统计
    3、在ECS 上先执行ps aux | grep java,找到JVM的pid;
             然后再执行jmap -dump:format=b,file=heap.bin <pid>,得到heap dump文件。

    4、ps -ef |grep java |grep Xms
          ps -ef |grep java |grep Xmx

    free -gh 显示的物理内存是7G,java的Xms与Xmx设置的都是5120m。

    解决方案:

    1、需要升级服务器的物理内存资源或者将Xms与Xmx写低

    2、如果是buff/cache占用内存高

    方法是:

      echo 1 > /proc/sys/vm/drop_caches

      当然,这个文件可以设置的值分别为1、2、3。它们所表示的含义为:

      echo 1 > /proc/sys/vm/drop_caches:表示清除pagecache。

      echo 2 > /proc/sys/vm/drop_caches:表示清除回收slab分配器中的对象(包括目录项缓存和inode缓存)。slab分配器是内核中管理内存的一种机制,其中很多缓存数据实现都是用的pagecache。

      echo 3 > /proc/sys/vm/drop_caches:表示清除pagecache和slab分配器中的缓存对象。

  • 相关阅读:
    信号量的简单使用
    [Unity 3D] Unity 3D 性能优化(二)
    Android 开机动画源码分析
    关于FTP操作的功能类
    ArcGIS Engine 改变线IPolyline的方向
    使用ORACLE SQL Tuning advisor快速优化低效的SQL语句
    Linux CPU 负载度量公式
    Java垃圾回收机制
    常用的shell命令整理
    UVa340
  • 原文地址:https://www.cnblogs.com/wannengachao/p/13739826.html
Copyright © 2020-2023  润新知