先日、WEBサーバをNginxからLiteSpeedに乗り換えた。また、WordPressプラグイン「LiteSpeed Cache」によってキャッシュやWebP変換といった設定をしてきた。
今回の記事では、複数のパフォーマンス計測サイトを使って、LiteSpeedへの移行によって実際にどの程度サイトが高速化されたのか検証したので、その結果を紹介しようと思う。
PageSpeed Insightの計測結果
まずは最も有名な(?)Googleの速度計測サイト「PageSpeed Insights」から。
モバイルはだいたい65~75点くらい。LiteSpeed移行前は40点くらいだったから約30点のプラス。
パソコンは92~97点くらい。こちらも移行前は85点くらいだったので約10点のプラスとなった。
点数にブレがあるのは、そのとき表示される広告の影響をかなり受けるため。動的GIFとかあると5点くらい減点されることもある。
この傾向は他の計測サイトも同様で、改善項目に広告関連の画像とかJavaScriptとか表示されるともうお手上げとなる。
WebPageTestの計測結果
続いて、こちらもGoogleを中心に開発されているパフォーマンス計測サイト「WebPageTest」。計測時のロケーションやブラウザ設定はデフォルト(Dulles/Chrome)で実施した。
LiteSpeed移行前を計測していなかったので比較できないけど、「Cache static content」以外は最高のA評価となった。
唯一、最低のF評価となった「Cache static content」は、「静的コンテンツでブラウザキャッシュがどの程度利用されているか」を示す指標のようで、詳細をみたら点数は55/100だった。
GTmetrixの計測結果
最後に、こちらも上記2サイトと同じくらい有名な「GTmetrix」で計測した結果。計測条件はデフォルト(Canada/Chrome)のまま。
「PageSpeed」はGoogle、「YSlow」はYahooの速度スコアだけど、結果はいずれもB評価となった。決して悪くはないけど、巷にはA評価のサイトがたくさんあるので優秀とはいえない。
また、LiteSpeed移行前はA評価のときもあったので、むしろ悪化したといえるかも。
PageSpeedの詳細結果によると、「Leverage browser caching」の評価がダントツで悪い。ブラウザキャッシュについてはWebPageTestでも評価が低かったことから、何かしら改善の余地があることがわかった。
ブラウザキャッシュの設定見直し
このサイトではLiteSpeed Cacheでブラウザキャッシュを有効化し、有効期限を1ヶ月としている。ただ計測サイトの結果から、どうやら意図したとおり動作していない様子。
そこで改めて設定を確認したところ、CDNとして利用しているCloudflareでもブラウザキャッシュの設定があり、有効期限を「2時間」と指定していることがわかった。
二重設定は好ましくない&意図した期間より短く設定されているため、Cloudflareの設定を「Respect Existing Headers」に変更し、ヘッダ情報を優先するようにした。これで、LiteSpeed Cache側の有効期限(1ヶ月)が適用されるようになったはず。
実際、設定変更後にWebPageTestを実施したところC評価(点数は71/100)に改善した。
ただ、GTmetrixは何度実施しても評価は変わらなかったし、詳細をみるとこのサイト以外の静的コンテンツが毎回足を引っ張っていそうなので、単にタイミングの問題かもしれない。
【2019/12/4追記】その後の調査でわかったこと
その後の調査で、ブラウザキャッシュの点数が低い原因の1つは、Google Cloud Storageにある画像データのキャッシュ期間が2週間以下(デフォルトの10時間)だから、ということが判明した。
そこで、WP-Statelessプラグインの設定からキャッシュ期間を1ヶ月(max-ageを2592000秒)に変更し、全画像の再同期を行ったところ、GTmetrixも点数の改善を確認した。
まとめ
今回は、LiteSpeed移行後に実施した複数のパフォーマンス計測サイトでの結果を紹介した。
ブラウザキャッシュのみ良い評価ではなかったけど、移行前よりも表示速度は向上したし、広告といった他サイトのコンテンツを除けば悪くない結果だと思う。
サイトのパフォーマンスはSEOにも影響する重要な指標なので、今後も継続して改善していきたい。
あわせてどうぞ



