てんねん月桜: 【覚え書き】3.2-ja-2/サーバーの負荷軽減・まとめ(07/3/14版)

« トラックバックURLを簡単にコピー | メイン | TinyMCE Plugin for Movable Type Ver1.10 Ja »

2007年3月14日(水) 先勝

●【覚え書き】3.2-ja-2/サーバーの負荷軽減・まとめ(07/3/14版)

サーバーの負荷の軽減について、思いつく事と対策

【アーカイブ関係】
不要なアーカイブファイルを作製しない/対策済み
……日別アーカイブ、月別アーカイブ、週間アーカイブ、カテゴリー別アーカイブ、そして個別アーカイブの全てが必要な訳じゃない。
 (このブログでは、個別アーカイブとカテゴリーアーカイブのみ作成)

カテゴリーを細分化し、カテゴリーアーカイブの肥大化を防ぐ
……カテゴリーアーカイブは分割再構築できないため、再構築時のタイムエラーを招きやすい

【テンプレート関係】
テンプレートのモジュール可(要PHP可)/対策済み
……各テンプレートで共通の部分は、モジュール可して読み込ませるようにする。
 私のブログでは、ファイルが大きくなるすぎたカテゴリーアーカイブの再構築時にエラーが出るようになりましたが、本文(EntryBody)までモジュール可させてみたところ、エラーを回避できるようになりました。

負荷のかかるタグを使用しない/対策済み
……「MTCalendar」「MTArchiveList」「MTInclude(→テンプレートのモジュール可」)」など。
※注)私だけかもしれませんが、ファイルが肥大化しているカテゴリーアーカイブで旧暦表示プラグイン用のタグを使用すると、高確率でエラーが出るようになりました。
 →日付からエントリー本文・追記までを、モジュール化(EntryBodyのモジュール化)させて回避。

テンプレート/インデックスの「自動で再構築」 にチェックを入れるテンプレートの数を減らす。/対策済み
……「スタイルシート」は、スタイルシートを変更した時まみ再構築すればいいので、「自動で再構築」のチェックを外す。

【再構築関係】
再構築を分割させる、必要なエントリのみを再構築する(「rebuild支援ツール for MovableType」の使用)/未使用
……注)MT3.2においては、個別エントリーの分割再構築のみ可能。
 (カテゴリーと月刊アーカイブにおいてはエラーとなる)

SmartRebuild(カテゴリーアーカイブ分割再構築プラグイン)/使用中
……カテゴリーアーカイブ分割再構築
 注) 再構築エラー回避の試行錯誤において。カテゴリーアーカイブが分割再構築されないとの記述があったが、私の環境では分割成功。

再構築時のエントリ数を減らす/「mt-config.cgi」の書き換え/対策済み
……「#EntriesPerRebuild 40 」の"#"をとり、数字を10〜20などに減らす。
 (30〜40では、今のサーバーでエラーが出たが、20ならOKだった)
→ リビルドの回数は増えるが、一度に行う処理の量が減るので、タイムアウト等のエラーが出にくくなる。
ただし、カテゴリーアースイブは分割再構築できないので、カテゴリーを細分化する、SmartRebuildプラグインの使用などの工夫が必要な場合もあり。

再構築時のエントリ数を減らす/「lib/MT/App/CMS.pm」の書き換え(6152付近)/対策済み
……「Weekly => 5,」 →「Weekly => 2,」
「Monthly => 10,」 →「Monthly => 2,」
「Dynamic => 5,」 →「Dynamic => 2,」 など
 (MovableTypeで再構築にコケる)

月別アーカイブ、カテゴリーアーカイブ等の分割表示(プラグイン「MTPaginate.pl」の使用)/対策済み
……注)表示させる際に分割表示ができるが、ファイル自体が分割されるわけではないので、再構築時の負荷は変化なし

【その他】
データーベースは「Berkeley DB」ではなく「MySQL」を使う。/対策済み
……再構築を繰り返すたびにfileinfo.dbが肥大化するらしい。
ただし、ロリポップにおいて「MySQLにすると一時的に解消するようですがエントリー記事が200以上になるとやはり再構築時に読み込みエラー(500エラー)が起きる」という事もあるようです。
(【重要】MT3.2-ja-2の再構築エラーの対処法)
 データベースを変更するだけではなく、併せて上記ま対策を行うのが可という事で。


トラックバックURL

このエントリーのトラックバックURL:

※重複トラックバック防止プラグインを使用しています。
また、当ブログへのリンクのないトラックバックは受け付けられませんので、ご注意下さい。

コメントする


※スパム対策・情報保護の為、
ご記入頂いたメールアドレスは表示致しません。


(^o^)01 (*^o^*)02 (*^o^*)03 (*^o^*)04 (*^o^*)05') (^_-)-*06 (f*^o^*)07 (^3^)08
(;_;)11 (;_;)12 (;_;)13 (^_;)14 (-_-#)15 (-_-#)16 (-_-#)17 (-_-#)18
Y(;_;)Y21 (-_-)22 (-o-;)23 w(-o-;)w24 (^_^;)25 (^_^;)26 (+o+)27 (+o+)28
(toro)31 (toro)32 (toro)33 (toro)34 (toro)35
(toro)36 (toro)37 (toro)38 (toro)39

 ※スパム対策の為、ひらがなと句読点が文中にまったくない投稿は
  受け付けられませんので、ご注意下さい。