4/14日にSixApart(シックスアパート)社 ProNetの勉強会に参加してきました。
テーマは「~MTの再構築を改善!~パフォーマンスチューニングとシステム構成の集中講座」。Movable Type : MT(ムーバブルタイプ)でサイト構築されてことがある方はみなさん興味がある内容かなと思います。そもそも ProNet加盟者に希望を聞き、要望の多かった再構築改善をテーマにされたそうです。
Movable Type : MT(ムーバブルタイプ)の仕様上、記事が増えれば再構築に時間が掛かる事は避けられないですね。ただチューニングを行う事で大幅に改善されるそうです。再構築時のパフォーマンス改善のポイントは以下の4点だそうです。
・ウェブサイト/ブログの初期設計
・テンプレートデザイン(MTタグ)と再構築設定
・サーバスペック
・システム構成(サーバ分散)
サーバスペックやシステム構成はデザイナー的には縁遠いので、主に上記2点がについて覚え書きです。
ウェブサイト/ブログの初期設計
一番基本的なところは不必要なファイルは出力しないこと。月別アーカイブを使わないケースとか結構ありますよね。Webページは1箇所で集中して作成した方が良いそうです。それとカテゴリーを多く設定するよりも、カテゴリごとにブログに分けることが効果的だそうです。理由を聞きそびれてしまいましたが、カテゴリページが一番負荷が掛かるそうです。また複数に分けた方が、そのブログの記事総数が減るので、必然的に再構築は効率化されますよね。SixApart社のサイトは50個くらいのブログで運用されているそうです。改めて考えると作成可能なブログ数が無制限であることもMTの一つの長所ですよね
ただカテゴリは、使いたいケースが多いので出来る限りといった形かなという認識でいます。ケースバイケースですね(記事数・更新頻度にもよりますし…)。これらの初期設定は従来やってきていたことでしたので、正しいことを再確認した感じでした。いつも結構面倒だなと思ってやっていたのですが、少し報われた感じします。
テンプレートモジュールを徹底活用すること。
テンプレートモジュールのキャッシュ設定ができるので、これを活用しDBアクセスを減らす事が再構築のポイントみたいです。
MTテンプレートモジュールのキャッシュについてはこちらから
再構築オプションの見直し(公開キュー)
再構築オプションで公開キューを選択すると、再構築を実行したタイミングではなく「run-periodic-tasks」が実行されるタイミングで再構築されます。mt.cgiではなく、時間をおいてバックグランドで再構築する感じでしょうか。
「run-periodic-tasks」は、指定日投稿を利用しない場合は設定をしていないことが多いですよね。知らなかったのですが、MTのセッション情報などを定期的にリサイズしてくれたりするので、設定した方が良いそうです。cron利用できる環境であれば今後は設定していくことにします。
アーカイブページと記事ページで閲覧比率は10:1だそうです。常に最新の状態で同期させるのではなく、アーカイブなどは優先度がそれほど高くないので、後で再構築するということですかね。確かに問題なさそうです。
某人気サイト「G」はこちらのチューニングで再構築に掛かる時間が10分の1になったそうです。