一朋友找我说,他们一个项目的服务器内存占用率太高了,让我帮忙看下怎么回事。我正好不是太忙就帮他看了下,并记录如下。

1 查看服务器状态

他的服务器是阿里云的ECS,系统是 CentOS Linux release 7.5.1804 (Core)
使用top命令看了下系统的状态

系统的整体负载和cpu并不高,但是内存使用比较高(总8G使用了7.2G)。
使用M按内存占用率排序

2 查看消耗内存最多的前40个进程

ps auxw|head -1;ps auxw|sort -rn -k4|head -40

通过上图可以发现有很多php-fpm的进程,使用命令ps -ef |grep php-fpm: pool www|wc -l 查看这中进程的个数有159个

每个进程大概占用了50M,看来内存高的问题应该在于php-fpm池的子进程数过多的问题了。

3 解决办法

通过各种搜索,发现可以通过配置 pm.max_children 属性,控制php-fpm子进程数量,首先,打开php-fpm配置文件,执行指令:
vi /opt/php/php7.2/etc/php-fpm.d/www.conf
找到 pm.max_children字段将其修改为100(原来是300),同事将pm.start_servers 修改为30 (原来是100)。
然后重启php-fpm systemctl restart php-fpm

再次查看内存使用情况,发现内存使用降低了很多

同时使用命令查看php的进程数降低了很多

由于不是太了解php,解决方法非专业的,都是从网搜的,可能不是最佳方案。

Linux内存占用过高排查过程相关推荐

  1. Linux系统内存占用过高排查方法

    以下以Ubuntu系统为例,内存占用过高可能是因为某个进程或程序占用了过多的内存,您可以按照以下步骤进行排查: 以上是一些基本的排查步骤,它们可以帮助您确定内存占用过高的原因,并采取相应的措施解决问题 ...

  2. java cms cpu占用率_cpu使用率过高和jvm old占用过高排查过程

    今天断断续续的收到管理平台的异常报警,cpu占用过高和jvm old占用过高,这个时候赶紧去排查原因,下面记录了我的排查过程,可能里面还有不正确的地方,欢迎各位大佬指正,也欢迎大家关于类似的案例一起交 ...

  3. linux内存占用过高怎么解决,centos7内存占用过高处理方法

    博士有几台frps服务器都出现了内存占用过高的现象,然后会出现CPU使用率飙升,网上找到这个清理buff/cache缓存脚本,希望有效果. 博士在找到这个脚本的时候也学到了一个关于Linux的知识点, ...

  4. linux内存占用过高原因

    今天服务器装了个lnmp环境,看了下那个探针, 发现内存占用97%,瞬间吓尿了. google了半天才发现,一般的解释是Linux系统下有一种思想,内存不用白不用,占用了就不释放,听上去有点道理,但如 ...

  5. linux内存占用过高问题解决方法

    1. 使用top 查看内存的占用情况,然后键入"M"命令根据内存的占用情况降序排列("P"是CPU占用情况降序排列) 2.关闭掉不需要的进程, 3.再使用top ...

  6. linux 内存占用过高

    1. 使用top 查看内存的占用情况,然后键入"M"命令根据内存的占用情况降序排列("P"是CPU占用情况降序排列) 2.关闭掉不需要的进程, 3.再使用top ...

  7. linux free 命令以及系统内存占用过高的处理方法

    linux free 命令以及系统内存占用过高的处理方法 [root@localhost ~]# free -mtotal used free shared buff/cache available ...

  8. linux nginx 内存占用,nginx内存占用过高

    nginx内存占用过高.md 现象 nginx运行一段时间后,内存占用非常高,超出系统最大内存后,开始使用SWAP,直至SWAP用尽,系统崩溃.内核参数vm.swappiness = 1. 如图: 监 ...

  9. Linux中buff/cache内存占用过高解决办法

    Linux中buff/cache内存占用过高解决办法 在Linux系统中,我们经常用free命令来查看系统内存的使用状态.在一个centos7的系统上,free命令的显示内容大概是这样一个状态: 这个 ...

最新文章

  1. php mysql curd_Php mysql 常用代码、CURD操作以及简单查询
  2. apriori算法c++_关联分析——基于Apriori算法实现
  3. Python之数据分析(间接联合排序、所有最值相关函数、有序插入、定积分、插值器对象)
  4. 矩池云上安装caffe gpu教程
  5. SSL的4阶段握手过程
  6. MyBatis-Plus——代码自动生成器
  7. ansible自动运维
  8. ES6阮一峰笔记部分对象新增方法、字符串的扩展和新增方法
  9. wpa_supplicant介绍
  10. java中怎么改变白天模式,android 白天黑夜模式切换例子源码
  11. 【ACM】算法竞赛及OJ题面常用英文单词整理(更新ing)
  12. 手把手教你如何制作iPhone卡贴(多图)
  13. 幼麟棋牌创建房间简短分析
  14. 动态修改spine动画渲染层次
  15. 解题:POI 2008 Plot purchase
  16. Mac电脑如何转化二维码?方法了来了
  17. 关于音频情感分类的随笔(5)
  18. 【零基础学Python】Day13 Python函数
  19. Typora工具免费版下载
  20. android 带头像的弹幕,原生Canvas实现带头像的弹幕

热门文章

  1. HackerRank 题目目录
  2. 新唐 Nuvoton NUC029 入门 点亮板载LED
  3. Data-free量化
  4. 抖音算法实习生面经(一面+二面)
  5. 什么是敏捷开发,敏捷开发落地指南之迭代排期
  6. application.properties详解 --springBoot配置文件
  7. Android(permission)常用权限
  8. 基于Java+SpringBoot+Thymeleaf+Mysql新冠疫苗预约系统设计与实现
  9. php易盾,内容审核统一管控!网易易盾智能审核管理系统开放试用
  10. Macbook双系统多分区的解决方案