• 技术文章 >后端开发 >PHP问题

    php cgi 进程占用太多怎么办

    藏色散人藏色散人2020-08-05 10:07:34原创617

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

    推荐:《PHP视频教程

    一般情况下,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 进程占用太多怎么办的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:php cgi
    上一篇:php new用法是什么 下一篇:mac php不解析怎么办
    线上培训班

    相关文章推荐

    • fastcgi和cgi有什么区别• 谈谈php中的fastcgi和php-fpm!• 浅谈CGI、FastCGI、PHP-CGI、PHP-FPM!• php cgi 无法启动怎么办

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网