WordPressのCron設定(wp-cron.php)を変更し負荷対策する方法
2024/02/22
WordPressのcron設定(wp-cron.php)を変更することで負荷が軽減されるという記事を見かけて設定してみた。記事にアクセスする都度、wp-cron.phpを読み込むらしくPVが多いサイトだと不要な負荷がかかる。また、あまりPVが無いサイトはwp-cron.phpにアクセスがなく、予約投稿をミスするということがありこちらも改善されるらしい。以下に対応方法をメモ。
wp-config.phpの編集
以下を追記することでwp-cronを無効にできる。
define('DISABLE_WP_CRON', 'true');
cronの設定
サーバ側のcronで動かす必要がある。以下で設定する。1分毎が良さそうだけどその辺は適宜変更する。root権限ではなくwebサーバを動かすユーザーで設定すること。
vi /etc/crontab */10 * * * * apache /usr/bin/php /var/www/wordpress/wp-cron.php > /dev/null 2>&1
wp-cronの実行内容
MySQLでwp_optionsテーブルのoption_name=cronで検索し、option_value内にシリアライズされた状態でwp-cronの実行内容が保存されている。
schedule部分が実行感覚だと思われdaily、twicedailyとかが入っている。プラグインによっては30minみたいなものが入っている。なので最小の間隔未満でcron設定しておけば大丈夫じゃないかと。
あとwp_version_check、wp_update_pluginsみたいな名前が入っており、ここが恐らく実行内容かと思われる。
まとめ
wp-config.phpでwp-cronを停止しサーバ側のcron設定することで対応が可能。
関連記事
-
-
XML-RPCライブラリを利用してWordPressを外部サーバから投稿する方法
WordPressをダッシュボードからではなく、外部サーバのプログラムから投稿し ...
-
-
WordPressの自動更新(アップデート)を無効化する方法
あるサーバで通常はロードアベレージが1未満だけど10以上に上がりサーバに接続しづ ...
-
-
WordPressでサイト及びサーバ内ファイルが改ざんされた際の対処方法
WordPressで立ち上げたサイトがあり、しばらく放置していたが久しぶりにチェ ...
-
-
WordPressテーマファイル内のfunctions.phpの初期設定についてメモ
WordPressのテーマファイル作成時にfunctions.phpを書くが、い ...
-
-
WordPressで「No URL was~」というエラーの原因と対応方法
WordPressでmp4ファイルをアップロードして記事に埋め込んだものの、記事 ...