1 查看服务器状态

系统是 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,解决方法非专业的,都是从网搜的,可能不是最佳方案。

最新文章

  1. iOS真机测试,为Provisioning添加设备 -- based xcode6[原]
  2. webstorm自动编译typescript
  3. vi技巧合集
  4. [译]Node.js - Event Loop
  5. [codeforces 360]A. Levko and Array Recovery
  6. iOS 模拟器键盘弹出以及中文输入
  7. ZLIB 库
  8. osgEarth例子
  9. 利用API自动建立GL科目段组合
  10. SQL Server小技巧【1】
  11. 博客Mac桌面编辑器-cnblogs
  12. Keepalived实现Redis Failover
  13. opals 开发记录
  14. js动画学习(三)
  15. 区间重合判断(pojg校门外的树)
  16. KMP算法之从next[]到nextVal[] (转)
  17. String.split()分割字符串
  18. ACE_Event_Handler:事件响应入口
  19. select 通过表单提交获取select中的值
  20. C#传入一个时间值,判断年月日时分秒

热门文章

  1. js逆向之补环境常用代码
  2. linux 删除influxdb的某条数据
  3. 三步快速搭建Typora图床(SM.MS+PicGo)
  4. java中的杨辉三角
  5. python画社交网络图
  6. 1、Idea自定义背景设置
  7. Centos下部署最后一版支持Docker的k8s集群
  8. 升级csproj文件为vs2017工程格式(SDK样式)
  9. HHKB Programming Contest 2022 Winter(AtCoder Beginner Contest 282)
  10. 解决win7嵌入式系统无法DoublePulsar问题