Kinstaでは、サーバープランごとにPHPスレッド数が異なります。特定の時間にWordPressサイトが同時に処理できるリクエストの数が、PHPスレッド数により左右されます。簡単に言えば、ウェブサイトでキャッシュされていないリクエストはすべて、スレッドにて処理されることになります。
たとえば、WooCommerceサイトの場合は通常、適切な機能を確保するために、決済ページは(NginxルールまたはCookieを使用し)意図的にキャッシュされません。キャッシュされていないリクエストは、PHPスレッドにより処理されます。つまり、キューに加えられ、順々に対処されます。リクエストの数がスレッドの数を上回ると、処理待ちのキューで「渋滞」が発生し、新しいリクエストが拒否されることで、502エラーや504エラーが発生したり、リクエストが正しく処理されなかったりする可能性があります。
したがって、WordPressサイトの中には、最高のパフォーマンスを確保するために一般的なウェブサイトよりも多くのPHPスレッドを必要とするものがあります。特に、キャッシュのBYPASSまたはMISSを伴うトラフィックの多いウェブサイト、そして、同時接続ユーザー数の多いウェブサイトでは、比較的多くのPHPスレッドが必要になります。このようなウェブサイトは通常「非常に動的である」と表現されます。
動的と見なされるサイトは、例えば次の通りです。
- ECサイト:WooCommerce、Easy Digital Downloadsなど
- 会員制サイト:MemberPress、Ultimate Membership Proなど
- 学習管理システム(LMS): LearnDash、Lifter LMSなど
- フォーラム(ユーザー投稿型)サイト:bbPress、BuddyPressなど
キャッシュできないコンテンツの多いサイトへの推奨事項
動的サイト(ECサイト、会員制サイト、LMS、フォーラムなど)をお持ちである場合、PHPスレッド数が2つのプラン(Single 35kとWP 2プラン)はお勧めいたしません。
上記に該当するサイトは、PHPスレッドが2つのプランでもサイトとして稼働します。しかし現実的に、2つのスレッドで同時接続ユーザーからの全てのリクエストを処理するのは大変難しいでしょう。
わずかなトラフィックしか予想されない場合は、上記のウェブサイトでも2つのスレッドで運営することが可能です。ただし、スレッドが2つに設定されているプランで動的ウェブサイトを運営し、実際にパフォーマンスの低下が見られたり、502エラーが発生したりした場合は、少なくとも4つ以上のスレッドの組み込まれたプラン(シングル65k/WP 5以上)へのアップグレードをおすすめします。
なお、Kinstaサポートスタッフによる、502エラーのデバッグまたはパフォーマンス向上に関する対応は、「2つ以上のPHPスレッドが付属するプラン」をご利用中の動的サイトに限られますのでご了承ください。
あわせてご確認ください
- Kinstaでのキャッシュされていないコンテンツの処理方法の詳細はこちらをご覧ください。
- PHPスレッド以外にも、ECサイトや会員制サイトのパフォーマンスに影響を与える要因はあります。WordPress会員制サイトのサーバーに関してはこちらをご覧ください。