PHPワーカーとは何ですか、なぜ気にする必要がありますか?

公開: 2022-06-30

お気に入りのコーヒーショップのウェブサイトを閲覧したことがありますか。新しいコーヒーの注文をチェックアウトすると、遅れて504エラーが発生します。

または、お気に入りのスポーツWebサイトを閲覧していて、次のページを読み込もうとすると、読み込みに時間がかかり、タイムアウトエラーが返されますか?

これらの状況は苛立たしいものであり、サイトを見たときに私たちが期待するものではありません。 どちらの場合も、サイトに十分なPHPワーカーが割り当てられていないことが原因である可能性があります。 十分な数のPHPワーカーがないと、サイトリクエストの数が多い場合、サイトはすべてのサイトリクエストを処理できません。 サイトの速度は、訪問者をセールスリードや顧客に変えるために非常に重要であるため、これは良い状況ではありません。

PHPワーカーとは何ですか?

PHPワーカーとは何ですか? PHPワーカーはページを作成し、サイトでのバックエンド処理を必要とするリクエストを処理します。 PHPワーカーは、サイト訪問者用のHTMLページを生成する責任があります。 このため、Webサイトが一度に処理できるキャッシュされていないリクエストの数を決定します。

これは通常、特定のアイテムの在庫チェックなどのアクティブなタスクです。または、顧客の以前の注文をすべて表示して一覧表示するのと同じくらい複雑な場合もあります。 PHPワーカーが開始されると、プロセスが完了するか、特定の条件が満たされるまで、PHPワーカーは永続的です。

PHPワーカーは、スキャンされる各アイテムがPHPプロセスである食料品店のチェックアウトラインと考えてください。

PHPワーカーが1つ(チェックアウトラインが1つ)しかない場合は、すべてがその1つのチェックアウトレーンを通過する必要があり、レジ係は一度に1つの注文しか処理できません。 PHPワーカーは、サイトでの同時または同時トランザクションの数を制限できます。 前述のように、PHPワーカーが4つ(チェックアウトラインが4つ)しかない場合、サイトは一度に4つのトランザクションしか処理できません。

WordPressプラグインの2022エッセンシャルガイド>>

ただし、これは5番目の顧客(PHPプロセス)以降が処理されないことを意味するものではありません。 PHPプロセスは、ワーカーのキューに配置されます。つまり、最初のリクエストを順番に処理してから、キュー内の次のPHPプロセスに移動します。 言い換えれば、長い列が形成され、人々は待ち始めます。

幸いなことに、PHPワーカーは、食料品店のレジ係よりも速く情報を処理します。 それらは非常に迅速に動作し、ミリ秒以内に多くのほとんどのプロセスをクリアできます。 PHPワーカーを数人追加するだけで、一度に実行できる同時プロセスをさらに増やすことができます。つまり、一度に処理できる顧客の注文を増やすことができます。

サイトあたりのPHPワーカーが少なすぎるとどうなりますか

サイトにPHPワーカーが2つしかなく、いくつかのプラグインと重いテーマがあるとします。 これらの2つのPHPワーカーは、プラグインとテーマプロセスを処理するためにのみ常に使用され、サイトへの訪問者からの新しいページ要求をすぐに構築するためのキューを残します。

これに加えてeコマースサイトを運営している場合は、キューの量が増えるだけです。 並んで待っている顧客と同じように、一部のPHPプロセスは列を放棄します。 回線を放棄する、またはタイムアウトするように記述されておらず、座って待機するプロセス。 その後、サーバーリソースにはるかに高い負荷をかけ始めます。 チェックアウトラインがブロックを包み込んでいるようです。

WordPress WebサイトでのPHPプロセスは、連絡フォームの送信や、訪問者のIPまたは郵便番号に基づいた訪問者の地理的位置の特定の要求と同じくらい簡単です。

eコマースWebサイトの場合、これは少し異なって見える場合があります。 処理中の新規注文、カート、顧客ログインなどのアイテムはすべてPHPワーカーを利用します。 製品または説明は通常キャッシュされるため、通常、表示にPHPプロセスは必要ありません。 PHPワーカーが3〜5しかないということは、Webサイトで同時に実行できるトランザクションの数が限られていること、およびPHPワーカーがトリガーされた順序でリクエストを処理することを意味します(ショッピングラインのように)。

PHPワーカーの負荷を軽減する方法

PHPワーカーにとって最初によくある問題領域は、プラグインが多すぎてテーマが重いことです。 一般的に、次のヒントを使用して、肥大化したWebサイトによって引き起こされる問題を軽減することができます。

  1. プラグインを使用してサイトキャッシュを追加する
  2. リモートサイトへの外部呼び出しを減らす
  3. 一般的なサイトの最適化

サイトの最適化は複雑になる可能性があります。特に、トラフィックが多く、細部に注意を払う必要があるサイトではそうです。 一般に、サイトが大きいほど、スタイル、製品、注文、および顧客を要求する方法でサイトがより効率的になる必要があります。 このようにして、PHPワーカーを一般的なサイト機能にあまり利用せず、PHPワーカーは重要なもの(トラフィック)を効果的に処理できます。

過剰なプランには、最大規模のサイトでもトラフィックを管理するのに十分な同時ユーザーが含まれます。

Nexcessを使用すると、XSプランの一部としてすでに20人の同時ユーザーがいます。 これは、XXLプラン(120)に移行するにつれて、20ずつ増加します。

WordPressパフォーマンス最適化のビギナーズガイド>>

他のマネージドアプリケーションプラットフォームは、2〜4人のPHPワーカーを紹介サービスで提供します。 Nexcess Managed WordPress、WooCommerce、およびMagentoホスティングには、サーバー側のキャッシュも組み込まれています。これにより、静的コンテンツを処理するためのPHPワーカーの使用を最小限に抑え、PHPワーカーが最も重要な人々(顧客)からのリクエストを処理できるようになります。

より多くのPHPワーカーでより高速なサイトを維持する

ただし、PHPワーカーはそれぞれ数千のプロセスを管理できます。 次のような多くの要因が関係しています。

  • 彼らは何回外部から電話をかけていますか?
  • データベースへの問い合わせと競合しているプラ​​グインはいくつありますか?

さらに、PHPワーカーをサイトに追加すると、サーバーから使用されるリソース割り当ても増加します。 実行するPHPプロセスが多いほど、より多くのRAMとCPUの割り当てが必要になるため、サーバーにかかる負荷が大きくなり、可能な限り最適化することで、サーバーの負荷を減らすことができます。 PHPワーカーは重要ですが、魔法のような万能のソリューションではありません。

プラグインが多いほど(非アクティブなプラグインであっても)、非静的リクエストを処理するために使用されるPHPワーカーが多くなります。 同じことが、注目度の高いテーマにも当てはまります。

このため、PHPワーカーのタスク負荷を軽減するために、キャッシュとコンテンツ配信ネットワーク(CDN)を使用することをお勧めします。 これにより、サイトが最適化され、顧客の要求を可能な限り最速で処理できるようになります。

Nexcessのフルマネージドホスティングが組み込まれています

あなたのウェブサイトのパフォーマンスを改善することは、高品質のホスティングから始まります。 NexcessフルマネージドWordPressとWooCommerceホスティングを使用すると、次のことが可能になります。

  • トラフィックの急増時にサイトを高速に保つための自動スケーリング。
  • 読み込み時間を短縮するために自動的に最適化された画像。
  • 組み込みのCDNのおかげで、読み込み時間が非常に速くなります。
  • もっと!

ユーザーがTrustpilotで5つ星のうち4.6の評価を与えた理由をご覧ください。 サイトに最適化されたホスティングを体験してください。 今日から始める計画を​​確認してください。