kawama.jp

MTの再構築が重い!てか途中で止まる。

カテゴリ: MovableType — 2006年5月2日 13:26 — Comments (1)hatebu count

会社で使ってるmtのバージョンを3.17から3.2にあげたら、再構築が劇的に重くなった。

topコマンドで見てみたらロードアベレージが15!!超高負荷状態だ。mt.cgiのSIZEは1600Mになってる!!

調べてみたところ、どうやらmt3.2はmt3.17に比べて再構築がハンパなく重くなっているそうだ。3.2のリビルド時のメモリ使用量は、3.171の約10倍なんだとか。。。
そして、BerkeleyDBをつかってる場合はさらに重くなるらしい。うちの環境にそのまんま当てはまる。。。

で、ググって見たら同じ問題で困っている方が大勢いらっしゃった。いきなり10倍になったら、そりゃみんな困るよね。

とりあえずの対処法として、mt-config.cgiの「EntriesPerRebuild」の設定値をデフォルトの「40」から「10」に下げてみる。
こんな感じ↓

EntriesPerRebuild 10

さっそく再構築する。再構築の小窓とtopコマンドの両方を見てチェックする。

「再構築中 エントリー: 1 – 10 …」 同時にmt.cgiのSIZEが増えていく。10M、50MB、100MB、300、600、、、

小窓が自動リロードされ、「再構築中 エントリー: 11 – 20 …」になる。topコマンドのmt.cgiのSIZEがリセット。そしてまたSIZEが増え始める。。

これの繰り返し。遅いけど、なんとか再構築終わるか。
この調子で「再構築中 エントリー: 161 – 170 …」くらいまで来た。が、topコマンドを見てみたらmt.cgiのSIZEがまたもや1600MBに!!どうやら固まってしまったようだ。10個ずつにしたのに、それでもダメか。とほほ。。。

ここで、いさぎよくBerkeleyDBはあきらめる。MySQLへ移行しよう!

MySQL移行に向けて、再度ググってみる。mt標準の「mt-db2sql.cgi」だとトラックバックデータが参照できないエラーがあるらしいので、Googleで見つけた「mt-db-convert.cgi」というのを使ってみた。さっそく走らせてみる。


SQLエラーが発生しました: You have an error in your SQL syntax.  Check the manual that corresponds to your MySQL server version for the right syntax to use near ‘2005-10-10 12:53:30’, NULL, ‘2006-05-02 12:08:32′, NULL)’ at li

という、意味不明のエラーで止まる。どうやら「MT::Log」のところで止まっているようだ。
ログなんていらないや、ってことで「mt-db-convert.cgi」の32行目「MT::Log」を消したら通った。


続いて、別のエラーに遭遇。今度はテンプレートのところだ。

SQLエラーが発生しました: You have an error in your SQL syntax.  Check the manual that corresponds to your MySQL server version for the right syntax to use near ‘\’さん。コメントしてください。 (<a href=\”<$MTRem

探してみたら、個別エントリアーカイブのテンプレートに該当の文字があった。これも不要なので該当の箇所を全部削除。そしたらここも通った。


以上で移行完了。ふぅ。
とりあえず「EntriesPerRebuild」を「20」にして再構築をかけてみたが、そんなに負荷も高くならずに無事完了した。いやぁ、よかったよかった。


しかし、ここまでmtが重いのは正直困りものだ。
実は3年くらい前、仕事で韓国製のCMSを触っていたことがあり、そのときもCMSの高機能化と記事数の増加に比例してHTMLの出版時間が長くなるという問題が発生していた。そのときは、

・ヘッダやフッタなど、共通部品はSSIを使う
rebuild支援ツールを自作して使う

など、運用でなんとか乗り切って(ごまかして?)いたのだけれど、結局それも根本的な解決にはならない。

この問題は静的HTML型CMSの宿命だと思うのだが、mtはこの問題を克服できるんだろうか。。
シックスアパート社はバージョン3.3で何らかの手を打ってくると思いますが、いったいどんな手法になるのか。ちょっと楽しみにしてます。

 

今回お世話になったサイト:
http://www.ec-blog.com/05/000061.html
http://www.ec-blog.com/04movable_type/000060.html
http://as-is.net/wiki/MT_Database_Converter/ja 

 

1件のコメント »

  1. MovableType3.3が6月27日にやってくる!

    昨日、シックスアパートから発表あり。

    コメント by Shoulder.jp — 2006年6月14日 @ 17:00

RSS feed for comments on this post. TrackBack URL

Leave a comment

Copyright (C) 2002 - 2017 kawama All Rights Reserved. — Powered by WordPress