wordpressの高速化
cloudflareによるwordpress高速化が思ったほどではなかった
wordpressの高速化が急務でした。それは、google site kitのスコアがあまりにも悪かったからです。そして、wordpressのセルフチェックでも警告が出ていました。そして、これを何とかしようとしたのが事の発端です。キャッシュを入れたり、CDNを使用しましたが、あまり効果はありませんでした。そこで、cloudflareを導入して、それなりの効果は出ました。でも、満足の行く結果には至りませんでした。
これを何とかしたいという思いで、色々と検証をしながら試してみました。
cloudflareをデフォルトのまま使ったら障害が出た
cloudflareを導入後、メールサーバーにつながらないという障害が出ました。ネームサーバー自体をcloudflareにあづけた弊害がでました。これは、メールサーバーのアドレスも預けてしまったために起きた現象です。これの対処は簡単でした。先ずは、cloudflareの管理メニューからDNSを選びます。そして、メールサーバーの設定を変えるだけです。具体的には、”Proxied”から”DNS Onlyに”変えればokです。
cloudflareを導入してもサーバーサイドのキャッシュは必要だった
cloudflareを導入したのでサーバーでのキャッシュは不要と思っていました。しかし、実際にサーバーでのキャッシュを無効にした場合、アクセスが遅くなりました。これは、当然の結果です。cloudflareはサーバー側コンテンツの更新確認を行います。この時、サーバーにアクセスをします。そして、サーバーにキャッシュが無かった場合、DBからの記事読み出しが発生します。つまり、キャッシュが無いためにDBアクセスの分遅くなっていたわけです。
wordpressの高速化にはjetpackプラグインのCDN機能を併用しましょう
jetpackというプラグインには、CDNとの連携機能があります。これは、画像データをwordpress.comにコピーすることで、wordpress.comをCDNとして利用する機能です。CDNを利用することで、クライアントは常にCDN側の画像を読み取ります。これによってサーバーの負荷が下がります。これも実際に、jetpackの有無で速度を比較しました。その結果、jetpackのCDN機能は有効であることがわかりました。
ケースバイケースだと思いますが、画像の遅延読み込みは逆効果でした
一般的には、画像の遅延読み込みは、サイトの速度向上に有効と言われています。しかし、jetpack boostのスコアでは、遅延読み込みは逆効果でした。同じく、javaスクリプトの遅延読み込みも無効の方が結果が良かったです。その一方で、css読み込みの最適化は有効でした。このあたりのチューニングは、環境によって異なると思います。したがって、ここに書いた情報は鵜呑みにせず、検証結果しながら決めてください。
実はテーマの影響が一番大きかった
このサイトでは、Firstというテーマを使用していました。しかし、パフォーマンスには少し疑問を持っていました。それ以外にも、コメントや関連記事表示の不安定さも気になっていました。そこで、いくつかのテーマを検証してみました。検証のために、このサイトをそっくりコピーしたサイトを作りました。そして、検証の結果、現在使用しているSimple Daysに落ち着きました。
結構真剣にwordpressの高速化をしてみました。そして、google site kitのspeedはPCでは全項目goodになりました。しかし、mobileの方はまだ改善の余地があります。頑張ってみます。