ネタフルのMT再構築が劇的に速くなったレシピはコレ!

2009-10-01_2243.png

専用サーバのはずなのに、個別エントリーの再構築だけで7時間以上かかるってどうなんだろう‥‥と思っていたところ、魔法使いが現れてチューニングしてくれました!

ツイッターで悲しげにつぶやいていたところ、魔法使いが現れました。チューニングしてくれたのは、@yagishita(Six Apart)です。

ネタフルをチューニングした結果はブログで公開して、ぜひ他の皆さんの役に立ったらいいなということで、お手伝いして頂いた次第です。

ということで今回、奏効したレシピはこんな感じです。

・ストレージエンジンをMyISAMからInnoDBに変更する
・InnoDBのバッファプールのキャッシュ率を高めるようにmy.cnfの設定 (innodb_buffer_pool_size) を変更する

「ストレージエンジンをMyISAMからInnoDBに変更」したのが大きいみたいですね。

ストレージエンジンというのは、データへのアクセスを制御するところのようで、これを変更してキャッシュをチューニングしたところ、それまで7時間以上かかっていた個別エントリーの再構築が‥‥

30分になっちゃったんです!!!

サイト全体でも約1時間と、とんでもない高速化を果たしたネタフルのMovable Typeのリビルド(再構築)なのでした。

専用サーバでないと使えないチューニングだと思いますが、適用できる環境にある人は、検討してみてください。

詳しい手順などは、@yagishitaのエントリーをご確認ください。

MTを使ったサイト構築テクニック (2): ネタフルにおける再構築チューニング – techknow.yagishita.net

今回、お手伝いしたことで痛感したことは「チューニングの大切さ」です。最近、再構築のチューニングについてご相談を受けることが増えてきたのですが、せっかく専用サーバーだというのに、チューニングしていないケースが多いことに気づきます。サイトの納品の前にできる限りのチューニングを実施し、かつ定期的なチェック (DMAICですね) をすることで、お客様の運用に関する負荷を軽減できたり、「MTは再構築がいけてないから○○だよね。」という評価に対する回答にもなります。

ちなみに、ネタフルのエントリー数は約24,500です。テンプレートのチューニングも施せばまだ高速化する可能性もあるそうで、これでまだまだMovable Typeで戦うことができます!

再構築(リビルド)に時間がかかりまくる‥‥という長年の問題が解消されました! やった! ありがとうございます!