先日、11年半使った「さくらインターネット」から、「エックスサーバー」に本ブログのサーバーを移管しました。各所で使い心地が改善したのですが、一番のストレスだったWordpressのダッシュボードの重さ、遅さの改善がイマイチで、、ならばトコトンやってやろうといろいろ取り組んだ結果、改善ができたのでメモに残しておきます。
WordPressのダッシュボードの挙動についてはたくさんのオピニオンが上がっていて、簡単の情報を集めることができました。重さ、遅さへの対策としては主に、リビジョンの削除やプラグインの精査という情報が多かったです。ボクの場合、結局これらの対策では改善できなかったのですが、そのプロセスを整理しつつ、改善につながった方法も記録します。
リビジョンの削除やプラグインの精査など。ダッシュボードの速度改善で行ったことの整理。
リビジョンはWordpressの投稿やページ、その他を上書きする度に過去の状態をバックアップしてくれる安心感ある機能です。ただ、これがほっておくとどんどんたまっていってしまい、データベースの容量をひっ迫させるとともに、動作にも影響を与えるとのこと。プラグインは便利なものがたくさんあるので、次々とインストールしてしまうことで、動作に影響が及びます。これらを精査して、削除していくのがダッシュボードの速度改善だというオピニオンが多数。素直に受けめていろいろ試行したので、箇条書きでダダダと書きます。
- 「Optimize Database after Deleting Revisions(データベース最適化)」プラグインを使って、リビジョンの削除と制御を行う
- これまでのリビジョンを削除するとともに、今後は10日間のみ、1記事10リビジョンまでしか保存しない設定にする
- 同時に様々なキャッシュと、使っていないデータベースのカラム等を削除
- 容量をひっ迫させているプラグインを「P3 (Plugin Performance Profiler)」を使って調査
- ロード時間が長いプラグインとして「Jetpack」「Popular Posts」「ALL in one SEO pack」等が候補に挙がり、削除を検討する
- 「Wordpress Popular Posts」プラグインを削除
- 「ALL in one SEO pack」を削除し、代替として「Simple SEO Pack」をインストール
- 「Jetpack」プラグインの削除を検討するが、テキストエディタでのマークダウン記法の代替案が見つからず断念
とここまでいろいろやってみて、、ダッシュボードの速度に大きな改善は見られず。悶々としながら、深いところまでダッシュボード速度の改善に関する情報を調べていくと、「Query Monitor」というプラグインでクエリの実行時間をモニターしてみろ。というオピニオンが。これを試してみます。
「Query Monitor」で過去使っていたプラグインが原因である「PHPエラー」を発見!
「Query Monitor」プラグインをインストールしてページ遷移する度に、クエリの実行時間をモニタリングして結果を返してくれるようになります。その初っ端で以下のようなエラーを検知しました。
PHPのエラーが出ています。ページの生成時間をモニタリングできますが、9.89秒、およそ10秒もダッシュボードの記事一覧ページを読み込むまでに時間がかかっています。これはストレスです。PHPエラーの詳細を確認します。
wp-contentフォルダの中にある「object-cache.php」というファイルがエラーの原因でした。ファイル名で検索してみると「W3 Total Cache」というキャッシュ最適化プラグインのファイルだそうです。きっと大分以前にインストールして、削除したプラグインです。このプラグインについて調べると、アンインストール時にエラーが出る人が多数とのオピニオンが。ダッシュボードによる削除だけでは消えないファルがあり、それがこれでした。
でも、こんなエラーひとつが諸悪の根源なのか?とまだわからないまま、FTPからファイルを直接削除しました。改めてページを読み込み「Query Monitor」でモニタリングします。その結果が下記です。
なんと。エラーが消え、ページの生成時間が2.57秒と大幅に改善されました!これまでの1/4の時間!!体感はとんでもなく快適になりました。今まで悩まされていたことが本当にすっきりと改善しました。ずっと体内にあったガン細胞?結石?のようなものが取り除かれた気分です。これで今まで以上にブログの執筆に気持ちよく向き合えることができます。本当によかった。
今後は問題が発生したときには、Google検索による情報・意見の確認は大切にしつつも、まずは「Query Monitor」で調査・モニタリングして原因を追究しようと思います。それから、プラグインの精査の過程で「Jetpack」と「AMP」プラグインを削除したいと思いつつ、諸事情あってできていなので、この問題にも取り組むことをここで誓いつつ。。
エックスサーバーへのサーバー移管に端を発した今回の大捜索と大改善ですが、時間がかかり、悶々とすることも多かったけれど、とてもよい機会になりました : )
コメント - comments -