WordPressで高いCPU使用率を修正する方法

公開: 2022-10-25

この記事では、WordPress で CPU 使用率が高くなる一般的な原因を修正する方法をいくつか紹介します。

ワードプレスを更新する

これは最も簡単な修正方法なので、より複雑な修正に入る前に、ここから始めることをお勧めします。

WordPress の主要な更新を怠ると、サイトのパフォーマンスが最適化されず、ホスト サーバーの CPU 負荷が高くなります。

幸いなことに、WordPress の更新はワンクリックと同じくらい簡単です。 [ダッシュボード] > [更新] に移動するだけです。 ここで、インストール可能な新しいバージョンの WordPress があるかどうかを確認できます。 [今すぐ更新] をクリックすると、準備完了です。

プラグインを確認する

プラグインは、WordPress のパフォーマンスの問題の最も一般的な原因の 1 つです。 プラグインが CPU リソースを消費する方法はいくつかあります。

  • 一部のプラグインは一定のバックグラウンド タスクを実行します
  • 一部のプラグインが古いか、安定したバージョンを実行していない可能性があります
  • 一部のプラグインには、使用しないがバックグラウンドで実行されている機能や設定が多数含まれています
  • プラグインは、リダイレクト ループを引き起こすリダイレクトを実装できます

WP Hive Chrome 拡張機能を使用して、プラグインがサイトのパフォーマンスに与える影響を確認できます。 または、プラグインを無効にして、それがどのような影響を与えるかを確認することで、昔ながらの方法で行うこともできます.

サイトが最適化されていることを確認する

WordPress の CPU 使用率が最大 90% 以上の場合は、ホスティングまたはトラフィックの急増が原因である可能性が高く、まずそれらの領域に対処する必要があります. ただし、WordPress サイトを高速化するためのいくつかの簡単なヒントを使用して、サイトを合理化し、CPU 負荷を軽減することを常にお勧めします。 これらには以下が含まれます:

  • ファイルの縮小と圧縮
  • キャッシング
  • 画像の最適化
  • 動画を外部でホストする

WP-CRONを無効にする

Cron は、自動的に実行されるタスクをスケジュールするコマンド ライン ユーティリティです。 これらのコマンドは「cron ジョブ」として知られています。 WordPress では、cron ジョブは WP-CRON によって処理されます。 ただし、WP-CRON は、WordPress が実際の cron ジョブの機能を模倣するために使用する関数にすぎません。

WP-CRON は、定義されたスケジュールではなく、ページが読み込まれるたびに起動するため、パフォーマンスの問題を引き起こす可能性があります。 これは、トラフィックが多い場合、誰かがページをロードするたびに WP-CRON がスケジュールされたイベントをチェックし、サーバーに余分な負担をかけることを意味します. 一方、サイトのトラフィックがそれほど多くない場合、誰もページをロードしないと、スケジュールされたイベントが見逃される可能性があります。

多くの人にとっては、単純に WP-CRON を無効にして、代わりに実際の cron ジョブを使用する方がよいでしょう。

WP-CRON を無効にする方法

WP-CRON を無効にするには、wp-config.php ファイルを編集して次のコマンドを追加する必要があります。

 define('DISABLE_WP_CRON', true);

「/*それだけです、編集をやめてください!」という行の直前に置きます。 幸せな出版。 */」。

disable cron

独自の cron ジョブを作成する方法

WP-CRON を無効にしても、自動的に実行が停止するだけですが、コマンドで wp-config.php を実行する実際の cron ジョブを設定することはできます。

これを行うには、いくつかの方法があります。

  • ホスティング プロバイダーのコントロール パネルから cron ジョブを設定できる場合があります。
  • cPanel を使用している場合は、[Advanced] > [Cron Jobs] に移動して設定することで、cron ジョブをスケジュールできます。
  • WP Crontrol などのサードパーティのプラグインを使用します。
  • SSH で cron ジョブを手動で構成します。

コンテンツをコンテンツ配信ネットワークにオフロードする

content deliver network

ホスト サーバーから遠く離れた国から誰かがサイトにアクセスすると、データがコンピューターに到達するまでに時間がかかります。 これらのリソースの配信に費やされる余分な時間は、ホスト サーバーの処理能力を消費します。

この問題の答えは? CDN (コンテンツ配信ネットワーク)。

コンテンツ配信ネットワークは、地理的に分散したサーバーのシステムであり、サイトの静的アセットのキャッシュ バージョンが含まれています。 これらのサーバーにコンテンツをオフロードして、ユーザーが最も近いサーバーからアセットを受信できるようにすることができます。 これにより、読み込み時間が短縮され、ユーザーエクスペリエンスが向上し、何よりも、WordPress サイトの CPU 使用率が大幅に削減されます.

悪いボットをブロックする

間違いなく、Google のボットについてはすでにご存知でしょう。 これらは「良いボット」です。 彼らはあなたのサイトをクロールして検索エンジンのインデックスを作成し、SEO はそれらを中心に展開します。

ただし、WordPress サイトに毎日アクセスするボットの数はさらに多くなっています。 これらのボットの多くは悪意のあるものではありませんが、サイトのトラフィックに影響を与え、CPU に不必要な負担をかける可能性があります。

この一般的なクロール ボットのリストを参照して、Web サイトからブロックするボットを確認できます。 特定のユーザー エージェントによるサイトのクロールをブロックするには、次の形式を使用して robots.txt ファイルにルールを作成する必要があります。

 User-agent: BotName Disallow: /
block bad bots

「/」は、ルート ディレクトリから、つまりサイト全体からブロックしたことを意味します。 特定のディレクトリからのボットのみを禁止する場合は、次のように記述できます。

ユーザーエージェント: BotName

 Disallow: /DirectoryName/

次のルールを追加して、.htaccess ファイルからボットをブロックすることもできます。

 RewriteEngine On RewriteEngine On RewriteCond %{HTTP_USER_AGENT} UserAgentName [NC] RewriteRule .* - [F,L] To block multiple bots, format your rule like this: RewriteEngine On RewriteCond %{HTTP_USER_AGENT} ^.*(Bot1|Bot2|Bot3).*$ [NC] RewriteRule .* - [F,L]

または、プラグインを使用して厄介なボットをキャッチし、手動でチェックして禁止する手間を省くことができます.

Blackhole for bad bots プラグインをお勧めします。 砂糖水の入ったグラスにハチを閉じ込めるような、悪質なボットを捕まえる非常に巧妙な方法があります。

プラグインは、クローラーにのみ表示されるサイトへのリンクを追加します。 このリンクは餌として機能します。

次に、robots.txt にルールを追加して、ボットがこのリンクをたどることを禁止します。 もちろん、スパム ボットはこのルールを無視してリンクをたどります。 彼らがそうすると、彼らはあなたのサイトへのアクセスを即座に禁止されます.

かなり賢いですね。

ホスティング オプションを確認する

WordPress サイトの CPU 使用率が高い場合は、ホスティング プロバイダーから十分なサーバー リソースを取得していない可能性があります。 これは、共有ホスティングを使用している場合に特に当てはまります。 共有ホスティングは、サーバー上でホストされている他のすべての Web サイトと常に電力を競っているため、CPU の過負荷の最も一般的な原因の 1 つです。

共有ホスティングが使い物にならなくなったと思われる場合は、他のタイプのホスティング プロバイダーをチェックしてみてください。

  • 仮想プライベート サーバー (VPS) ホスティング: サーバーを共有しますが、仮想パーティションに分割されるだけなので、メモリ、CPU コア、ストレージなどの専用リソースを使用できます。 他のサイトから効果的に隔離されているため、サーバー上の別のサイトへのトラフィックが急増しても影響を受けません。
  • クラウド ホスティング: クラウド ホスティングは、最近かなりの勢いを得ています。 基本的に、CDN のように機能します。 サイトは、単一のサーバーではなく、仮想サーバーと物理サーバーのネットワーク全体に保存されます。 クラウド ホスティングは、使用したリソースに対してのみ支払うため、多くの場合安価です。 また、複数のサーバーに分散しているため、セキュリティが強化され、アップタイムの信頼性が高まり、本質的に無限のスケーラビリティが得られます。
  • 専用ホスティング: 多くの場合、Web ホスティングの最高峰と考えられているこのオプションは、独自のサーバーを提供し、使用するサーバー リソースを 100% 制御できます。 反対に、これは通常最も高価なオプションであり、適切に管理するには技術的な専門知識が必要です。
  • マネージド ホスティング: マネージド ホスティングでは、基本的にホスト プロバイダーがサーバーを管理します。 メンテナンス、更新、セキュリティなどについて説明します。 これは、他のタイプのホスティングへのアドオンです。 マネージド共有ホスティングまたはマネージド専用ホスティングを使用できます。

結論

CPU 使用率を下げると、WordPress サイトの全体的な状態が大幅に改善され、パフォーマンスが向上し、稼働時間が安定し、ユーザー エクスペリエンスが向上します。 この記事のヒントの多くは CPU 負荷を軽減するのに役立ちますが、サイトの CPU を常に過負荷にしている場合は、ほぼ間違いなくホスティングの問題です。