アクセスアップでサーバー制限されない為のワードプレス(WP)高速化術

WPを手軽に適度に高速化してみます。

有名サイトに取り上げられたりして瞬間的にアクセス集中が起こった場合、共有レンタルサーバーでは比較的あっという間に「500エラーや503エラー」が出ます。

スポンサーリンク

 

500 Internal Server Error

503 Service Temporarily Unavailable

TIPS:「404 Not Found」なども目にすることが多いと思いますが、これらの番号はHTTPステータス・コードといいます。400番台はクライアントエラー(ユーザー側のエラー)、500番台はサーバーエラーです。

これらの制限に引っかかると、せっかくのアクセスがさばけません。こうなってからでは遅いので事前にWPの負荷を下げておく必要があります。

リサーチしてみた所、WPには様々な高速化の方法がありました。負荷低減は、基本的に「キャッシュ」と呼ばれる方法で行います。WPでは、アクセスの度にページの内容をPHPで作成していますが、その結果のみを一定期間保存しておき、次のアクセスではそれを使います。このような仕組みをキャッシュと呼び、プログラム内の様々な箇所でキャッシュを行うことで、全体の負荷を下げます。

キャッシュを導入するデメリットとしては、複数のキャッシュの絡みなどで、記事やデザインの変更がすぐに反映されなかったりします。WPの立ち上げ当初は、デザインなどの変更が頻繁に行われると思うので、しばらく運用して落ち着いてきた時が高速化の時期でしょう。

下がWP高速化の全体像となります。

サーバーやPHPの性能アップ

効果は高いが、WPの一層下の対策なので今回はスルー。

  • PHPアクセラレーター
  • HTTPアクセラレーター
統合キャッシュ・プラグイン

PHPアクセラレーターまでも含む。強力だが大規模なためサーバーリソースの大量消費で逆に重くなるという情報もあり。

  • W3 Total Cache
ページ・キャッシュ

最後の出力結果であるページを丸ごとキャッシュ。

  • WP Super Cache
  • WP Widget Cache
リソース・キャッシュ

CSSやJSなどをコンパクトにして高速化。

  • WP Minify
  • Head Cleaner
オブジェクト・キャッシュ

PHPの変数をキャッシュ。

  • WP File Cache
データベース・キャッシュ

DBをキャッシュ。

  • DB Cache Reloaded Fix
MOキャッシュ

翻訳ファイルをキャッシュ。

  • MO Cache
体感速度アップ(負荷が減るわけではない)

WPは内部でページを作成する際、すべて作り終えてから出力するが、できた順に出力することで体感速度を上げる。

  • WP Hyper Response

基本的には、これらのキャッシュを全て入れてしまえばいいわけですが、闇雲に入れると逆に重くなる場合もあります。例えば、当サイトのJSやCSSは殆どノーマルなので、現段階でリソース・キャシュは必要ありません。

また、一度に大量のプラグインを入れてしまうと、問題が起こった場合に原因が特定しにくいため、今回はWPの内部的なキャッシュとして、

  • MO Cache
  • WP File Cache
  • DB Cache Reloaded Fix
  • WP Hyper Response

の4つを導入します。

その後、しばらく運用し様子を見た後にページ・キャッシュを導入したいと思います。

まずは、

  • MO Cache
  • WP File Cache

の導入です。MO Cache のみでは効果はないようで WP File Cache と共に入れる必要があります。インストール→有効化の他、特に設定は必要ありません。参考:WordPress をたった3分で3倍高速化する方法 [MO Cache] – カワイイはつくれる

これだけで3倍高速化とのことで、たしかに表示が早くなりました。

次に、

  • DB Cache Reloaded Fix
  • WP Hyper Response

を導入します。DB Cache Reloaded Fix はプラグインの有効化の後に、設定画面で有効にチェックを入れる必要があります。WP Hyper Responseに設定は必要ありません。

※12/01/06追記 WP Hyper Responseを有効化していると、アフィリンクにてクッキーの保存前にHTTPヘッダが出力されてしまう為、無効化しました。レアなケースとは思いますが、クッキーを利用するPHPスクリプトとWP Hyper Responseはコンフリクトします。

今回の高速化プラグインにより、ダッシュボードの動作も早くなりました。しばらく運用を続けてみます。

参考:WordPressキャッシュ系プラグインの比較とサイトに適した選び方 | ゆっくりと…

 

 

スポンサーリンク