通过我的 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
Run Code Online (Sandbox Code Playgroud)
在任何给定的签入时,我的流程列表中似乎有大约 6 个这样的记录。
任何想法是什么原因造成的?我已经安装了 fast_cgi 并且模块正在加载.. 不知道为什么它不处理这个。
任何帮助将不胜感激!
瑞安
php-cgi 负责实际运行您的所有代码。看到这些一直占用资源是很正常的。如果您没有看到网站的额外流量,这可能表明您遭到了黑客攻击(通过受感染的网络服务器发送大量垃圾邮件或 DDoS 攻击的人将使用大量 CPU)。
我建议您停止使用 php-cgi 并切换到 PHP-FPM。这将使您更好地了解正在发生的事情。它还可以提高效率,因为 PHP-FPM 工作人员可以共享一个 APC 缓存实例,而这可能不是这种情况,具体取决于您的 php-cgi 安装的配置方式。PHP-FPM 还允许您启用“慢日志”,它会在请求耗时超过 X 秒时捕获正在执行的内容的快照。这对于排除性能不佳的故障非常有帮助。