Xアクセラレータ Ver.1とVer.2の違いと設定方法

Xアクセラレータ Ver.1とVer.2の違いと設定方法

エックスサーバーのXアクセラレータVer.2が提供開始になったとエックスサーバーからお知らせがきました。

今までエックスサーバーで設定してたXアクセラレータはどうなるのか?と思いましたがXアクセラレータVer.2を設定できるようになると、今までのXアクセラレータはVer.1に名前が変更になってます。

XアクセラレータVer.2になってから設定方法も変更になりましたが、相変わらず簡単すぎる設定だけでXアクセラレータが使えます。

ただXアクセラレータVer.2を設定するときは、XアクセラレータVer.1も含まれるので、Ver.1とVer.2の違いや気をつける事もありました。

XアクセラレータのVer(バージョン)の違いと設定方法、気をつけるべき事にも触れてみたいと思います。

 

Xアクセラレータ Ver.1とVer.2の違い

 

Xアクセラレータの設定で選べるのは「Ver.1」と「Ver.2」です。

Xアクセラレータ設定方法の違いは分かりやすく、Ver.1はVer.1だけしか使えないけど、Ver.2の設定はVer.1の設定も加わるだけの違いです。

そしてXアクセラレータVer.1とVer.2で、それぞれできることは

 

  • Ver.1 は静的ファイルの高速化(キャッシュ)だけが設定できる
  • Ver.2 は静的ファイルの高速化(キャッシュ)PHPプログラムの高速化が設定できる

 

もう少し詳しくXアクセラレータで設定するVer.1とVer.2はどんなことができるのかVer(バージョン)ごとの内容の違いを説明しようと思います。

 

Ver.1で静的ファイルのキャッシュ

 

XアクセラレータVer.1は静的ファイルに対して設定できます。

設定することで静的ファイルのキャッシュがサーバーに保持されます。

キャッシュされる対象ファイルを拡張子でみてみます。

 

.css .js .jpeg .jpg .gif .png .svg .svgz .wbmp .webp .ico .jng .bmp .3gpp .ts .mp4 .mpeg .mpg .mov .webm .fiv .m4v .mng .asx .asf .wmv .avi .mid .midi .kar .mp3 .ogg .m4a .ra .woff2 .ttr .otf .eot

 

XアクセラレータVer.1でキャッシュされる対象ファイルの中で「.css .js .jpeg .jpg .gif .png」はよく使う事が多いと思います。

サイトのデザインをオリジナルに変更するときCSSコードが増えてしまうとか、jpegやpngで画像を記事内に挿入することが多くなると表示が遅くなりやすいですが、XアクセラレータVer.1やVer.2を設定しサーバーで対象ファイルをキャッシュして表示する事で表示速度は改善されやすくなります。

そしてXアクセラレータVer.1の静的ファイルのキャッシュ保存期間は「2分間」です。

また、キャッシュが保存されないケースが下記のケースらしいので確認してみてください。

 

レスポンスヘッダのCache-Controlで含まれる以下の場合

  • no-cache
  • no-store
  • private
  • must-validate
  • レスポンスヘッダにSet-Cookieを含む場合
  • レスポンスコード「200」「404」以外の場合

 

上記がレスポンスヘッダにある場合はキャッシュが保存されないケースとしてXアクセラレータの説明に書いてあったので、Search Consoleのfetchからレスポンスヘッダとステータスラインも確認しておくと良いかもしれません。

 

 

Advertisement

 

 

Ver.2でPHPプログラムの高速化

 

XアクセラレータVer.2ではVer.1で設定できなかったPHPプログラムの高速化が設定できます。

PHP言語を使用したファイルは動的ファイルなのでXアクセラレータVer.1のキャッシュされる対象ファイルには含まれていません。

なのでXアクセラレータVer.2でPHPプログラムに対応してるので、Ver.1との大きな違いはキャッシュする対象ファイルが違うことです。

エックスサーバーのXアクセラレータVer.2「PHPプログラムの高速化」では

PHPプログラムの処理速度を最大20倍まで向上させる

そして

WordPressなら最大10倍」もの高速化負荷耐性向上の実現となるようで、エックスサーバーで使用されてる「OPcache」や「nginx」+「Xアクセラレータ」の組み合わせが強いのかなと思います。

OPcacheはアクセスされるたびに毎回コンパイラを起動してphpソースを解析すると時間がかかるので、解析後の状態をメモリに保存しておくことで次回からはメモリで解析後にphpを直接読み込むことができるようにしてるモジュールです。

 

 

それからnginxはApacheよりも大量のリクエスト処理をするのが得意でリクエストを同時並行で処理が可能です。エックスサーバーで使用されてる、この仕組みが分かるだけでも大量のリクエストがあった場合の高負荷耐性の向上に納得ができます。

 

 

参考記事はエックスサーバーにあるOPcacheとnginxについてなので、PHPプログラムの高速化がよく理解できると思うので参考にしてみてください。

 

 

Advertisement

 

 

Xアクセラレータ Ver.2の設定方法

 

Xアクセラレータが一番初めにリリース開始されたときは、エックスサーバーのサーバーパネルからXアクセラレータで設定をONに自分で操作する設定方法でした。

ですが途中からエックスサーバー側で標準設定をしてくれるようになり、自分で設定する必要がなくなりましたが、XアクセラレータVer.2のリリース開始からは、自分でエックスサーバーのサーバーパネルから設定する方法に変更になってます。

Xアクセラレータの設定方法は簡単です。

 

  1. エックスサーバーでサーバーパネルにログインします。
  2. サーバーパネルのXアクセラレータを選択します。
  3. Xアクセラレータ設定で「XアクセラレータVer.2」を選択して「確認画面へ進む」をクリック

 

 

 

最後に「変更する」をクリックするだけでXアクセラレータVer.2の設定は完了です。

 

Xアクセラレータ Ver.2の設定で気をつけること

 

XアクセラレータVer.1の「静的ファイルの高速化」は、訪問者ごとに表示が異なるようなページは効果が出ずらいようです。

そしてエックスサーバーのXアクセラレータVer.1の注意事項の説明を引用させてもらいます。

 

ウェブサーバー上に、特定のユーザーや特定の環境のみに公開を制御しているコンテンツデータ等がある場合、本来広く公開されていないはずのデータがリバースプロキシ上にキャッシュされ、意図しないユーザーがそれらのデータへアクセス可能となってしまうことがあります。

 

上記のことが該当してないか確認してからXアクセラレータの設定をする前に気をつけることの一つです。

そしてXアクセラレータVer.2はphp.iniの一部設定が無効になります。

php.iniファイルはPHPのプログラムを動作させる設定ファイルです。自分でphp.ini設定の変更や直接編集してる場合はXアクセラレータVer.2の設定をすると一部項目が無効になるので設定前に確認しておくことが事前に気をつけることです。

 

 

 

あとは.htaccessに自動でコードが記述されるので削除しないように気をつけます。

 

 

設定の前にはPHPバージョンの確認をしておくことがXアクセラレータを設定するときに気をつけることです。

 

まとめ

 

今回リリース開始されたエックスサーバーのXアクセラレータVer.2は負荷耐性が強くなり「安定したサイト表示」ができるし「同時アクセスに強い」というメリットがあります。

私のサイトではエックスサーバーで高負荷がかかるほどの「同時アクセス」いわゆる「バズる」事が一度もないため検証できていませんが、XアクセラレータVer.2の効果が発揮されるタイミングは「大量同時アクセス」が多いときだと思います。

逆に今後いつ来るか分からない大量同時アクセス(バズる)に備えておくためにXアクセラレータVer.2を設定しておくべきなのかもしれません。

 

エックスサーバーカテゴリの最新記事