我托管了一个wordpress博客,自6月5日以来,我一直在AWS上托管100%的CPU负载(高于5%)。

php - .php-fpm-bin 100%CPU使用率。如何跟踪导致它的确切脚本?-LMLPHP

现在,我添加了许多插件,主要是每个用户每个页面加载20个mysql查询的插件。问题是我添加了许多脚本而没有意识到负载,因此无法禁用它们。

理想情况下,我将更改代码,以便恢复CPU负载。

最佳答案

我看到的导致此问题的原因在wordpress上尤其是在具有许多插件的网站上是wp-cron.php。这是一个伪cron作业,它运行每个请求,并且随着它的执行越来越多,这些作业可以彼此排成队列,在下一轮启动之前从未完成,从而导致CPU失控。

wp-config.php中,可以通过添加以下内容来禁用此功能:

define('DISABLE_WP_CRON', true);


但是,这将阻止某些依赖它的事物起作用。因此,您可以将cron添加到服务器以每5分钟运行一次:

*/5 * * * * wget -q -O - "http://example.com/wp-cron.php" > /dev/null 2>&1


如果您不熟悉cron,则可以通过在服务器控制台中运行crontab -e来添加任务。

10-07 19:17
查看更多