PHP-CGI进程占用过多CPU
2024-10-18 22:29:24
一般情况下,PHP-CGI只在用户访问的时候会占用CPU资源,但是最近有同事反映,服务器上的的PHP-CGI进程占用了非常多的CPU,但是访问流量却非常少。这显然是一个不正常的现象,说有些地方存在故障。以下导致此问题可能存在的原因,在此与大家分享。
1. 兼容性问题
如果php的扩展与php版本兼容存在问题,已经有反映过类似的案例, eAccelerater与某些php版本兼容存在问题,具体表现时启动php-cgi进程后,
运行10多分钟,奇慢无比,但静态资源访问很快,服务器负载也很正常(这说明服务器解析功能的nginx是没有问题,而是php-cgi进程的问题)。
解决办法
从php.ini中禁止掉eAccelerater模块,再重启php-cgi进程即可。
2. 程序中可能存在死循环
如果程序中存在死循环,则一定导致服务器负载超高(使用top指令查看负载高达100+)。
解决办法
借助Linux的proc虚拟文件系统找到具体的问题程序。
3. php程序不合理使用session
在查阅的资料中有看到,这个发生在开源微博记事狗程序上,具体表现是有少量php-cgi进程(不超过10个)的cpu使用率达98%以上,
服务器负载在4-8之间,
解决办法
需要借助Linux的proc文件系统找出原因。
4. 程序中存在过度耗时且不可能完成的操作
如果是这样的话,是因为程序本身在编写的时候,就写的不够规范。需要与软件的设计者以及编程工程师共同解决。
最新文章
- 总结:Mac前端开发环境的搭建(配置)
- jquery获取ul中的第一个li
- CSS基本知识3-CSS盒模型
- 红米3 TWRP-3.0.2(android_6.0.1_r72分支)中文版Recovery更新于20161018
- 黑客攻击常用CMD命令大全
- node.js文件系统
- find type d 命令批量删除禁用
- [转]ASP.NET MVC中你必须知道的13个扩展点
- hdu 4753 Fishhead’s Little Game
- ISP PIPLINE (二) LensShading Correct
- Android测试(三)——burpsuite抓包设置
- lr12介绍2
- Oracle客户端连接数据库配置
- python之编程风格
- Linux内核期中
- HDU4772(杭州赛区)
- html5-css边框img
- np.zeros
- (84)Wangdao.com第十八天_JavaScript 文档对象模型 DOM
- 【RS】BPR:Bayesian Personalized Ranking from Implicit Feedback - BPR:利用隐反馈的贝叶斯个性化排序