志田です。
再構築時間をできるだけ短くしなければいけない案件があり、
遅い箇所を特定するために、「Benchmark」というプラグインを作りました。
使い方は次のようになります。
MTテンプレートの中で次のように使います。
<mt:benchmark marker="header" action="start">
<$mt:Include module="ヘッダー" $>
<mt:benchmark marker="header" action="end">
そうすると、パブリッシュされたHTMLの中に次の記述が追加されます。
<!-- benchmark header 4 wallclock secs ( 3.05 usr + 0.13 sys = 3.18 CPU) -->
このようにして、任意の識別子を「marker」属性に指定し、任意の範囲をstartとendで囲むと、その範囲内の再構築時にかかった時間をHTMLのコメントとして吐き出してくれます。
Benchmarkはmarkerを分けて使用すれば、入れ子にして使うこともできます。
このプラグインのおかげで、遅い場所が特定でき、
5分かかっていた再構築が30秒まで短縮できました。
よろしければ試してみてください!
コメントする