503エラーを回避!レンタルサーバーでの同時接続数を理解しよう

こんにちは、CRチームのmochikoです!今回は503エラーについて解説していきます。WordPressを運用していて遭遇したことがある方もいらっしゃるのではないでしょうか。今回は503エラーの原因のひとつとなるレンタルサーバーでの同時接続数について解説していきます。503エラーの解消方法も初心者の方にわかりやすいようできるだけ丁寧に解説したいと思います。

503エラーとは?

まずは503エラーがどのようなときに起きるのかを整理します。

どんなときに503エラーが起きるのか

503エラーの一般的な原因は、一時的なサーバーの過負荷や、サーバーメンテナンスなどによるものです。レンタルサーバーにおいては、具体的には下記のような事例があります。

  • アクセス増加によってサーバーの同時接続数の上限を超えたとき
  • サイトの問題によってサーバーの同時接続数の上限を超えたとき
  • 障害やメンテナンスによる一時的なサーバーダウン
  • 同じサーバーにいる他のユーザーの影響でサーバーの負荷が一時的に高まったとき

レンタルサーバーの場合、他のユーザーと環境をシェアして使っているため、自分の管理するサイトが問題なかったとしても、他のユーザーの影響を受けてしまうことがあります。このような他のユーザーの影響を絶対に受けたくない場合は、VPSやクラウドサービスなど、共用サーバー以外のサービスを検討するとよいでしょう。

503エラーの原因として、「同時接続数」という言葉が出てきました。せっかくアクセスが増加しても503エラーとなってページが閲覧できなければ大きなチャンスロスです。503エラーを回避するためにも、レンタルサーバーにおける同時接続数というものを理解しておきましょう。対処方法だけが知りたい方は503エラーの解消方法の項目へお進みください。

レンタルサーバーの同時接続数とは?

基本的に多くのユーザーでサーバーを共有しているレンタルサーバーでは、同時接続数の上限が設定されています。ロリポップも含め、この数字は具体的に公開されていないことが多いですが、一般的に料金の高いプランになるほど同時接続数の上限が増えます。ロリポップでは、ハイスピードプラン、エンタープライズプランは同時接続数無制限です。

実は同時接続数の上限値の設定はレンタルサーバーの安定運用に必要なもので、一部のユーザーへのアクセスがサーバーへ全体へ影響してしまうことを避けるためのものです。同時接続数の上限を超えるとサーバーは503エラーを返すことになるのですが、もし503エラーを返さなければそのサーバーで行う処理が特定のサイトへのアクセスで埋め尽くされてしまい、他のユーザーがサーバーを使えなくなってしまうのです。レンタルサーバーでは、このような仕組みも使いながら安定運用できるように工夫しています。

次に、同時接続数とは実際に何の数を指すのかを解説したいと思います。

同時接続数=同時にアクセスできる人数ではない

同時接続数、同時アクセス数という言葉から一般的にイメージできそうなのは「同時にサイトにアクセスできる人数」かと思いますが、実はこれはレンタルサーバーで重要になる同時接続数の考え方とは少し異なります。

ある人があなたのサイトのトップページにアクセスしたとして、このとき接続数が1とカウントされるわけではありません。サイトを表示するときには、トップページで使われている画像やサイトに動きをつけるためのJavaScriptのファイルなどにも一緒にアクセスしています。ここでいう「接続」というのは、「必要なファイルへのアクセス」と考えるとわかりやすいと思います。ある瞬間においてサーバー上のファイルへ同時にアクセスしている数が「同時接続数」ということになります。

ある瞬間において、と強調して書いたのは、基本的にサーバー上でファイルへのアクセスにかかる時間はミリ秒単位の非常に短い時間だからです。本来はサイトへのアクセスが急激に増えたりしない限り、同時接続数が問題になることはまれだと思います。

一方で、サイトの作り方によっては、アクセス数がそこまで増えていないのに同時接続数をオーバーして503エラーが頻発してしまうことがあります。代表的な例は、使っている画像のサイズが大きい場合などです。画像に限らず、動画や音声などサイズの大きなファイルへアクセスする場合は読み込み時間が長くなるので、同時接続数の制限に引っかかりやすくなってしまいます。

画像のサイズが問題になるようなケースでは、サイトを少し改善するだけで同時接続数のオーバー、つまり503エラーを回避することができる可能性があります。

同時接続数の上限を超えるとどうなる?

同時接続数を超えると以下のようなことが起こります。

  • 503エラーが発生する
  • 同時接続数をさらに制限されることがある

ひとつずつ見ていきます。

503エラーが発生する

同時接続数を超えたときにわかりやすいのは503エラーの表示です。繰り返しになりますが、同時接続数の上限を超えるということは、同時に多くのファイルへのアクセスが発生している状態ということになります。これによって必要なファイルにアクセスできなくなり、503エラーとなって表示されます。

同時接続数をさらに制限されることがある

一時的なアクセス増加やサイトの問題の改善などによって、この503エラーの状態がすぐに解消されればよいのですが、恒久的に続く場合やサーバーに著しい負荷をかける原因になると判断された場合は、注意が必要です。このような状態になると、サーバーの負荷上昇を避けるための措置として、たとえば契約プランの同時接続数上限よりもさらに厳しい制限をかけられてしまう場合もあります。

ロリポップの場合、割り当てられた同時接続数をオーバーしたからといって直ちに厳しい制限を行なっているわけではありません。しかしながら、恒常的にサーバーに著しい負荷を与えていると判断した場合、通知の上で同時接続数の制限を行うことがあります。ロリポップのユーザー専用ページから同時アクセス数制限履歴の項目で制限があったかどうかを確認することができます。

ロリポップ同時アクセス数制限履歴

アクセス数がサーバーのスペックに見合っていない場合、503エラーが続くだけでなくレンタルサーバーのサービス提供者側から過負荷の警告などが来る場合があるので注意が必要です。アクセスが増えてきたなと思ったら、適切なスペックのプランにアップグレードを検討するのも忘れないようにしましょう。

503エラーの解消方法

単純なアクセス増加ならば、レンタルサーバーのプランアップなどを検討する必要があるかもしれません。しかしそうでないならば、503エラーの原因となりそうな問題がないかをチェックして改善していきましょう。

具体的には、以下の点をチェックします。

  • Google Analyticsなどのアクセス解析で直近の状態を確認する
  • サイトで使用している画像のサイズを小さくする
  • プラグインの使用をとめてみる
  • コンテンツキャッシュが提供されている場合は導入する
  • (ロリポップのスタンダードプランをご利用の場合)同時アクセス数拡張を使ってみる

では、ひとつずつ見ていきましょう。

Google Analyticsなどのアクセス解析で直近の状態を確認する

まずはアクセスが本当に増えたのかどうかを確認します。サイトの問題ではなくアクセスしてくる人が増えたことによって503エラーがでるようになったのであれば、サーバーの契約プランの見直しなども視野に入れましょう。ただ、プランアップは費用もかかるので、このあとの手順を試してみて改善するようであればもう少し今のプランでも運用できるということになります。

また、ロリポップの一部のプランではユーザー専用ページの同時アクセス数拡張という機能をつかってプランアップの目安を知ることができます。詳しくは後の項でまとめて解説します。

サイトで使用している画像のサイズを小さくする

先述のとおり、画像のサイズが大きいと同時接続数の制限に引っかかりやすくなります。これはファイルのサイズが大きくなるほど、そのファイルへアクセスする時間が長くなるためです。ひとつのファイルにアクセスする時間が長くかかるということは、一定時間で読み込めるファイルの数が減るということになります。

また、同じような理由からモバイル環境などで通信が不安定だったりすると、自宅のネット環境では問題なく閲覧できていたサイトが外出先のスマートフォンから確認すると503エラー閲覧できないということも起こりえます。通信速度が遅い状況で読み込むページの画像サイズが大きいと、ひとつのページを表示するために必要な各ファイルへの接続時間が長くなってしまい、結果として同時接続数の制限を超えてしまう可能性があるためです。どのような環境でもサクサク表示されるサイトにするためにも、画像のファイルサイズには気を配りましょう。

プラグインの使用をとめてみる

一部のWordPressプラグインは外部サービスとの接続などのプログラム的に重たい処理を行っていることがあります。また、なんらかのバグによって処理がループするようなエラーが発生してしまうと、同じファイルへのアクセスが大量に発生することによって503エラーとなってしまうケースもあります。必要ないプラグインはいったん削除したうえで、使用しているプラグインをひとつずつ停止しながら様子を見ると原因の特定が可能な場合があります。

また、新しくプラグインを導入する際には、不具合発生時の問題切り分けのためにも複数のプラグインを一度に設定しないようにしましょう。まずはWordPressのバックアップを取った上で、プラグインはひとつずつ導入して、その都度動作確認することをおすすめします。

コンテンツキャッシュが提供されている場合は導入する

レンタルサーバーの機能としてコンテンツキャッシュが提供されている場合は有効にします。ロリポップでは、ロリポップ!アクセラレータを提供しています。これを使うことで、キャッシュサーバーからデータを読み込んでくるのでサーバー上のファイルへの大量アクセスが発生しにくくなります。ロリポップ!アクセラレーはスイッチひとつでWordPress用にカスタマイズされたコンテンツキャッシュが設定可能なので、ぜひご活用ください。詳しい設定はマニュアルをご覧ください。

また、ロリポップ!アクセラレータの技術的な仕様についてはテックブログでも解説しています。ご興味のある方はぜひこちらもご覧ください。

ロリポップアクセラレータのしくみ

(ロリポップのスタンダードプランをご利用の場合)同時アクセス数拡張を使ってみる

ロリポップのスタンダードプランでは「同時アクセス数拡張機能」を提供しています。これは一時的に同時接続数の上限を増やした状態で503エラーの回数を確認することできるもので、プランアップの目安を知ることができます。また、たとえばテレビ出演など、あらかじめアクセスが増えるとわかっている日に合わせて予約設定することで、大量アクセスに対する備えもできる機能です。

ロリポップ同時アクセス数拡張機能

コンテンツキャッシュ機能や同時アクセス数拡張を組み合わせることで、一時的な大量アクセスを乗り切った事例もあります。もし突発的なアクセス増に対応したい!というお悩みがある場合は、適切な設定をご案内できる場合がありますので、ぜひ一度サポートまでご相談ください。

まとめ

  • 503エラーの原因のひとつは同時接続数の上限を超過していること
  • 同時接続数=サイトに同時にアクセスしている人数ではなく、あるサイトにアクセスしている人数 x 読み込まれているファイル数
  • 503エラーが頻発するようならまずアクセス解析で状態を確認して適切に対処しよう

この記事を参考に503エラーに対応してみてください!

国内シェアNo.1の会社が運営しており、初心者にもおすすめのロリポップ
月額220円からWordPressが利用可能で、インストールも60秒で完了します。
初心者でも簡単にブログやホームページを始めることができます。
まずは10日間無料でぜひお試しください!

>ブログをはじめるならロリポップ!

ブログをはじめるならロリポップ!

「ロリポップ!レンタルサーバー」なら、WordPressを60秒でインストール。 12ヶ月以上契約すると45種類以上のドメインがずっと無料でご利用いただけます。