今回は、MySQLのデータベースを最適化するとWordPreeは高速化可するのか実験してみました。
最近やけにブログが重く感じる様になったのでブログ高速化を実行している毎日ですが、生憎WordPressに詳しくないワタシはネットで検索しながら試行錯誤して何とか設定等を行っています。
ブログ開設初期は、Simplicityの本家の記事を参考にしてコピペ1発で高速化が実現できました。
参考 コピペ一発でSimplicityを結構高速化する方法寝ログしかし、記事や画像が増えるにつれてサイト表示に時間がかかるようになり、『.htaccess』にコピペする方法でも効果が無くなってきたので、画像のサイズを減らしたりプラグインを入れてみたりしていますがイマイチ効果がありません。
PageSpeed Insights でサイトスピードを測ると、トップページではまずまずの数値になりました。
スマホ
パソコン
赤色が修正が必要な項目ですが、2点ありました。
- スクロールせずに見えるコンテンツのレンダリングをブロックしている JavaScript/CSS を排除する
- サーバーの応答時間を短縮する
この赤色の項目を修正していきたいのですが、WordPressの知識が無いワタシには何処をどうして良いか分かりません。
目次
スクロールせずに見えるコンテンツのレンダリングをブロックしている JavaScript/CSS を排除する
何やら難しそうな文章ですね。もう少し分かりやすく書いてくれたら良いのに(笑)。
コンピューターがページを読み込む事。
つまりブログの記事が表示される時にJavaScriptやCSSの読み込みが優先されてしまい、記事の表示が遅くなっているという意味です。
このJavaScript/CSSを排除して、ページの表示速度を速くして下さいって事ですね。
『最適化についての提案』欄の『修正方法を表示』を開いてみました。
このページには、ブロッキング CSS リソースが 3 あります。これが原因で、ページのレンダリングに遅延が発生しています。
実は、これはすでに対策済みです。プラグインのAutoptimizeを導入する事によって、ほとんどのJavaScript/CSSを排除できました。
Autoptimizeを導入する前のPageSpeed Insightsでは、32という数字でした。
32➝3に減ったので、PageSpeed Insightsの数値も60➝66に改善されました。残りの3つは今の段階ではどうする事も出来ないので放置する事にしました。
サーバーの応答時間を短縮する
続いての修正項目です。サーバーの応答時間を短縮せよとの事ですが、何の事なのでしょうか?
サーバーの応答時間は 200 ミリ秒以下に減らす必要があります。
200ミリ秒とは0.2秒の事らしいですが…。
サーバーと言えば、一般的にレンタル(共有)サーバーの事です。共有となっているので、いわばアパートみたいなものですね。
例えると、アパートの住人の1人がたくさんゴミを捨てると、ゴミ捨て場の大きさは決まっているので他の住民がゴミを捨てるスペースが少なくなります。
共有で使っているサーバーの誰か1人のサイトのアクセスが多いと、他の人のサイトが遅くなる可能性があるという事になります。こればかりは自分ではどうしようも出来ないですね。
その他の方法でサーバーの応答時間を短縮できないかとネットで調べると、何やら簡単そうな方法を発見したのでためしに実行してみました。
MySQLデータベースのオーバーヘッドを最適化する方法
MySQLのデータベースを最適化してやる方法です、パソコンで言う所のデフラグですね。
MySQL=マイエスキューエル。世界で最も利用されているデータベース管理システム。オープンソースなので無償(商用利用不可)で利用できる。
レンタルサーバーのサーバーパネルにログイン
レンタルサーバーのサーバパネルにログインを行いましょう。ちなみにワタシはFUTOKAでサーバーを借りているのでFUTOKAのサーバーパネルにログインしました。
データベースの項目の『phpMyAdmin』をクリックします。
左の項目の下の『+』をクリック。
するとサブドメインがたくさん現れました。
データベースを最適化するサブドメインを探す
番号が1~11まで並んでいますが、当サイトがどれかと言うと、左の『+』をクリックして『wp_terms』と進むと、真ん中にカテゴリーが出てくるので見分けがつきます。
wp8が当ブログと判明したので、サブドメインをクリックし、目的のデータベースを表示させます。
いちばん右のオーバーヘッドの数字が大きければ大きいほど、ゴミ(未使用領域)が貯まっているという事になります。
『オーバーヘッドのあるテーブルを確認する』をクリックすると、オーバーヘッドに数字がある項目だけ選択されるので、右側の『チェックしたものを最適化する』選びます。
正常に実行されました、OK牧場です。
先程のページに戻ると、オーバーヘッドの数値が35.3MiB➝248バイトになっていました。
まとめ
今回は、ブログのを速化する方法としてMySQLのデータベースを最適化してみましたが、果たして効果があったのでしょうか? PageSpeed Insightsで再測定してみました。
変化なしorz・・・。
サーバーの応答時間も変わらずの1.8秒でした。しかし、gtmetrixで測定してみた所、少し改善が見られました。
MySQL最適化前
MySQL最適化後
ページのロードタイムが1秒速くなっていました、これは偶然かもしれませんが良い傾向ですね。
今回のまとめとしては、あまり効果は見られなかった事になりましたが、定期的にMySQLのデータベースは最適化しておいた方が良いかもしれないですね。