php-cgi CPU 使用率超高

php-cgi CPU 使用率超高

通过我的 Centos 服务器上的“top”可以看到 php-cgi 命令的 CPU 使用率百分比持续居高不下,而且波动很大。

我有一个服务器密度帐户,看来这是一种常见的趋势:

User - PID - CPU % - MEM % - VSZ - RSS - TT - Stat - Started - Time - Command

500 - 6389 - 22.4 - 3 - 271136 - 32380 - ? - S - 20:26 - 0:40 - /usr/bin/php-cgi

似乎在任何给定的签到中,我的流程列表中都有大约 6 条这样的记录。

知道是什么原因造成的吗?我已经安装了 fast_cgi 并且模块正在加载。但不确定为什么它没有处理这个问题。

任何帮助将不胜感激!

瑞安

答案1

php-cgi 负责实际运行您的所有代码。这些代码一直占用资源是很正常的。如果您没有看到网站有额外的流量,这可能表明您已被黑客入侵(通过受感染的网络服务器发送大量垃圾邮件或 DDoS 攻击的人会占用大量 CPU)。

我建议你停止使用 php-cgi 并切换到 PHP-FPM。这样可以让你更好地了解到底发生了什么。它还可以提高效率,因为 PHP-FPM 工作者可以共享一个 APC 缓存实例,而根据 php-cgi 安装的配置方式,情况可能并非如此。PHP-FPM 还允许你启用“慢速日志”,每当请求花费的时间超过 X 秒时,它都会捕获正在执行的操作的快照。这对于解决性能不佳的问题非常有帮助。

答案2

php-cgi 处理 fcgi 请求。因此,这可能意味着您的 PHP 正在进行一些处理。在某些硬件上,一个 PHP 进程很容易对某些请求达到 100%(我从我的坏服务器中了解到)。您应该观察这是否与您的请求相匹配并检查它们。

相关内容