处理php-fpm高CPU占用
时间:2025-12-15 02:30:04|栏目:其它服务器|点击: 次
具体现象有:
- CPU占用高:使用
top命令观察到CPU用户态占用特别高,长时间70%以上。 - php-fpm进程多:使用
top命令观察到php-fpm进程特别多。使用wc统计到有160+个进程。 - 等待线程多:使用
top命令观察到等待进程高达8+。
处理思路:
- 降低php-fpm进程数:通过调整
php-fpm.conf配置文件中pm.max_children字段,重启php-fpm并未见明显降低CPU占用率。 - 添加
access日志:在php-fpm.conf配置文件添加中access.log = /XXX/access.$pool.log、access.format = "%R - %u %t \"%m %r%Q%q\" %s %f %{mili}d %{kilo}M %C%%",观察日志,发现有一个接口访问量特别大,并且状态是404。预计就是这里出了问题。
处理结果:
在Nginx上将这个api接口丢弃掉(经过讨论,该接口已经处于废弃状态),发现CPU占用恢复正常。
总结:
php-fpm貌似使用cgi技术,fork时会比较消耗资源,后来在nginx上丢弃效率就要高得多
作者:jinelei
链接:https://www.jianshu.com/p/3094d3bf8717
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
您可能感兴趣的文章
- 02-02hadoop动态增加和删除节点方法介绍
- 02-02干货 | Linux新手入门好书推荐
- 02-02linux系统下MongoDB单节点安装教程
- 02-02Linux下nginx生成日志自动切割的实现方法
- 02-02Centos 6中编译配置httpd2.4的多种方法详解
- 02-02CentOS7 下安装telnet服务的实现方法
- 02-02分布式Hibernate search详解
- 02-02Hadoop对文本文件的快速全局排序实现方法及分析
- 02-02CentOS6.3添加nginx系统服务的实例详解
- 02-02Hadoop编程基于MR程序实现倒排索引示例


阅读排行
推荐教程
- 12-07Tomcat启动报错:严重: Unable to process Jar entry [m
- 12-07解决tomcat启动报错:一个或多个listeners启动失败问题
- 12-07一文教你怎么选择Tomcat对应的JDK版本
- 12-07Tomcat配置IPV6的实现步骤
- 12-07tomcat启动报错jar not loaded的问题
- 02-02CentOS7 下安装telnet服务的实现方法
- 12-11docker存储目录迁移示例教程
- 12-15Docker-Compose搭建Spark集群的实现方法
- 12-07Tomcat部署war包并成功访问网页详细图文教程
- 01-07windows server 2008安装配置DNS服务器




