如何解决php cgi 进程占用太多的问题

发布时间:2020-08-06 09:55:47 作者:Leah
来源:亿速云 阅读:141

这期内容当中小编将会给大家带来有关如何解决php cgi 进程占用太多的问题,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

php cgi进程占用太多的解决办法:1、从“php.ini”中禁止掉eAccelerater模块;2、借助Linux的proc虚拟文件系统找到具体的问题程序;3、借助Linux的proc文件系统找出原因。

一般情况下,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. 程序中存在过度耗时且不可能完成的操作
如果是这样的话,是因为程序本身在编写的时候,就写的不够规范。需要与软件的设计者以及编程工程师共同解决。

上述就是小编为大家分享的如何解决php cgi 进程占用太多的问题了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注亿速云行业资讯频道。

推荐阅读:
  1. PHP7内核剖析之CGI与FastCGI是什么
  2. php写定时器避免内存泄露的方法

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

php cgi

上一篇:Python中的垃圾回收机制的工作原理是什么

下一篇:Python使用列表解析的方法是什么

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》