wordpressの高速化

Spread the love

cloudflareによるwordpress高速化が思ったほどではなかった

wordpressの高速化が急務でした。それは、google site kitのスコアがあまりにも悪かったからです。そして、wordpressのセルフチェックでも警告が出ていました。そして、これを何とかしようとしたのが事の発端です。キャッシュを入れたり、CDNを使用しましたが、あまり効果はありませんでした。そこで、cloudflareを導入して、それなりの効果は出ました。でも、満足の行く結果には至りませんでした。

これを何とかしたいという思いで、色々と検証をしながら試してみました。

cloudflareをデフォルトのまま使ったら障害が出た

cloudflareを導入後、メールサーバーにつながらないという障害が出ました。ネームサーバー自体をcloudflareにあづけた弊害がでました。これは、メールサーバーのアドレスも預けてしまったために起きた現象です。これの対処は簡単でした。先ずは、cloudflareの管理メニューからDNSを選びます。そして、メールサーバーの設定を変えるだけです。具体的には、”Proxied”から”DNS Onlyに”変えればokです。

メールサーバーにアクセスできない障害は、ccloudflareのDBS設定祖を変更すれば治ります。
メールサーバーのDNS設定を変更

cloudflareを導入してもサーバーサイドのキャッシュは必要だった

cloudflareを導入したのでサーバーでのキャッシュは不要と思っていました。しかし、実際にサーバーでのキャッシュを無効にした場合、アクセスが遅くなりました。これは、当然の結果です。cloudflareはサーバー側コンテンツの更新確認を行います。この時、サーバーにアクセスをします。そして、サーバーにキャッシュが無かった場合、DBからの記事読み出しが発生します。つまり、キャッシュが無いためにDBアクセスの分遅くなっていたわけです。

wordpressの高速化にはjetpackプラグインのCDN機能を併用しましょう

jetpackというプラグインには、CDNとの連携機能があります。これは、画像データをwordpress.comにコピーすることで、wordpress.comをCDNとして利用する機能です。CDNを利用することで、クライアントは常にCDN側の画像を読み取ります。これによってサーバーの負荷が下がります。これも実際に、jetpackの有無で速度を比較しました。その結果、jetpackのCDN機能は有効であることがわかりました。

wordpressの高速化のためには、jetpackのサイトアクセラレーターはONにしておきましょう。
jetpackの設定→パフォーマンス→サイトアクセラレーターを有効化 をオンにしておきましょう

ケースバイケースだと思いますが、画像の遅延読み込みは逆効果でした

一般的には、画像の遅延読み込みは、サイトの速度向上に有効と言われています。しかし、jetpack boostのスコアでは、遅延読み込みは逆効果でした。同じく、javaスクリプトの遅延読み込みも無効の方が結果が良かったです。その一方で、css読み込みの最適化は有効でした。このあたりのチューニングは、環境によって異なると思います。したがって、ここに書いた情報は鵜呑みにせず、検証結果しながら決めてください。

jetpack boostの設定を検証しました。一般的には画像の遅延読み込みは、サイトの読み込み速度向上に有効とされていますが、検証の結果、逆効果であることがわかりました。ただし、これはペースバイケースだと思います。
jetpack boostの設定はこのようにしました

実はテーマの影響が一番大きかった

このサイトでは、Firstというテーマを使用していました。しかし、パフォーマンスには少し疑問を持っていました。それ以外にも、コメントや関連記事表示の不安定さも気になっていました。そこで、いくつかのテーマを検証してみました。検証のために、このサイトをそっくりコピーしたサイトを作りました。そして、検証の結果、現在使用しているSimple Daysに落ち着きました。

結構真剣にwordpressの高速化をしてみました。そして、google site kitのspeedはPCでは全項目goodになりました。しかし、mobileの方はまだ改善の余地があります。頑張ってみます。