WordPress Heartbeatとは?サイト速度に影響する理由

日常使用 ワードプレス ウェブサイトを運営する中で、多くのウェブマスターは以下のような問題に遭遇したことがあるだろう。バックエンドの応答が遅くなるそしてCPUの過剰使用もしかしたらサーバーリソースの占有率が高い状況は?おそらくWordPressに付属しているバックエンドの仕組みだろう:ハートビートAPI.この記事は、それが何なのか、どのように機能するのか、そしてなぜそれが時としてウェブサイトのパフォーマンスにとって目に見えない重荷になりうるのかを中心に書いています。

画像[1] - WordPress Heartbeat APIを最適化してウェブサイトのバックエンドパフォーマンスを向上させる

I. WordPress Heartbeat APIとは何ですか?

WordPress Heartbeat APIは、ブラウザとサーバー間の継続的な通信を可能にするためにWordPressから導入された組み込み機能です。簡単に言うと、定期的に AJAX リクエストを自動化し、リアルタイムのインタラクションを可能にする。

一般的な用途は以下の通り:

  • 下書き記事の自動保存
  • カスタム開発サポート
  • WooCommerce バックグラウンドでリアルタイムに統計情報を更新

heartbeatのデフォルトは 15秒 サーバーに一度だけ、頻繁にリクエストを送る。

次に、なぜウェブサイトのスピードに影響するのか?

heartbeatメカニズムは強力ですが、バックグラウンド要求の頻度が高いため、サーバに次のようなパフォーマンス上の影響を与える可能性があります:

1. 高いリソース使用量

各ハートビート要求は PHP (オープンソースのサーバーサイド・スクリプト言語)実行リソース、特に複数の人が同時に記事を編集する場合、サーバーへの負担は増大する。

2. CPUとメモリの使用率が高い

共有ホスティング環境や低設定のサーバーでは、頻繁なリクエストがCPU使用率を急上昇させ、バックグラウンドの 504 もしかしたら 502エラー.

画像[2] - WordPress Heartbeat APIを最適化してウェブサイトのバックエンドパフォーマンスを向上させる

3. キャッシュ機構のバイパス

ハートビートリクエストは、ほとんどのページキャッシングツールをバイパスするため、バックエンド処理の頻度が増加し、全体的なパフォーマンスの低下につながります。

4. プラグインの拡張がリクエストのオーバーヘッドを増やす

いくつかのプラグイン(例えば WooCommerce)は、Heartbeat APIを通じてデータロジックを追加できるため、リクエストの頻度や複雑さが増し、リソースの消費が悪化します。

第三に、heartbeatがパフォーマンスのボトルネックになっているかどうかを判断する方法は?

次のようにして、初期トラブルシューティングを行うことができます:

  • バックエンドではページの読み込みが遅いが、フロントエンドでは正常である。
  • ブラウザ開発者ツールにある admin-ajax.php リクエストは頻繁にある
  • サーバー監視ツールのバックグラウンドアクティビティの頻度が通常より高い
  • ログに過剰なハートビート要求エントリがある

バックエンドを使用しているときは、常にラグがあり、ロードが遅く感じられる。 PHP-FPM この値が急上昇し続ける場合は、Heartbeatが頻繁にリクエストを実行してリソースを消費している可能性があります。

画像[3] - WordPress Heartbeat APIを最適化し、ウェブサイトのバックエンドパフォーマンスを向上させる

IV.解決策:ハートビートの動作を最適化するには?

1. Heartbeat Controlプラグインのインストール

これは最も推奨され、最も簡単な方法です。このプラグインでできること

  • リクエスト間隔のカスタマイズ(例:60秒に変更)
  • 特定のページ(バックエンドダッシュボードやフロントエンドなど)のheartbeatをオフにする。
  • 一部の地域でハートビートを完全に無効にする

このプラグインはプログラミングの知識がなくても直感的に設定でき、ほとんどのユーザーに適している。

画像[4] - WordPress Heartbeat APIを最適化してウェブサイトのバックエンドパフォーマンスを向上させる

2. 手動最適化のためのコードを追加する

ファンクションコードでハートビートを制御することもできる:

add_filter( 'heartbeat_settings', 'limit_heartbeat_frequency' );
function limit_heartbeat_frequency( $settings ) { { { { { { $settings['interval'] = 60; // リクエスト頻度を60秒に設定します。
    $settings['interval'] = 60; // リクエスト頻度を60秒に設定する
    return $settings;
}

ハートビートを完全にオフにする必要がある場合:

add_filter( 'heartbeat_send', '__return_false' );

3. キャッシュプラグインでさらに高速化

使用中 W3 Total CacheそしてWPロケット もしかしたら LiteSpeed キャッシュ Heartbeatなどのプラグインを使用する場合は、Heartbeatを制御して、キャッシュ機構が頻繁にスキップされるのを防ぎ、全体的なパフォーマンスの安定性を向上させます。

V. ハートビートは完全に無効にすべきですか?

リアルタイムのインタラクションを必要とする機能がない場合を除き、Heartbeatを完全にオフにすることはお勧めしません。なぜなら

  • 下書きの自動保存が無効になる
  • セッション維持メカニズムが故障し、ユーザーが頻繁にログアウトする可能性がある。
  • マルチプレイでの共同編集が機能しない

より賢明なアプローチはこうだろう:必要に応じて地域機能を無効にする要求の頻度を増やすパフォーマンスと機能性のバランスを見つけるために。

結論

ワードプレス ハートビートAPIは便利ですが、見過ごされやすいバックグラウンドメカニズムであり、放置するとWebサイトの速度が低下したり、サーバリソースが消費されたりします。実際のニーズに応じて選択的に管理する必要があります。リクエスト頻度を合理的に設定し、不要なページ呼び出しを無効にし、キャッシュプラグインと組み合わせることで、コア機能の正常な動作を維持しつつ、サーバへの負荷を効果的に軽減することができます。


お問い合わせ
チュートリアルが読めない?無料でお答えします!個人サイト、中小企業サイトのための無料ヘルプ!
カスタマーサービス WeChat
カスタマーサービス WeChat
電話:020-2206-9892
QQ咨询:1025174874
Eメール:info@361sale.com
勤務時間: 月~金、9:30~18:30、祝日休み
© 複製に関する声明
この記事はToastが執筆した。
終わり
好きなら応援してください。
クドス782 分かち合う
おすすめ
解説 ソファ購入

コメントを投稿するにはログインしてください

    コメントなし