キャッシュを利用して再構築を高速化するMovableTypeプラグイン:KeyCached

Posted by
ぴろり
Posted at
2007/09/18 16:41
Trackbacks
関連記事 (0)
Comments
コメント (17)
Post Comment
コメントできます
Category
プラグイン カテゴリ

 が肥大化・複雑化すると,その再構築に要する時間や負荷が増すことになります。しかし実際の中には,再構築によってその内容が変化しない部分が少なくありません。そのような部分については毎回々々構築を行う必要はなく,前回に構築された結果を流用することによって,全体の再構築に要する時間や負荷を軽減できると期待できます。

この記事をはてなブックマークに追加する この記事のはてなブックマーク数 | この記事をlivedoorクリップに追加する この記事のlivedoorクリップ数 | この記事をYahooブックマークに追加する この記事のYahoo!ブックマーク数 | この記事をdel.icio.usに追加する | Twitterにポストする

 中の任意のブロックを再構築するか否かの判断が,一つ以上の値に依存しているとします。単純な例を挙げると,前回の再構築から記事の最終更新日が変化していないのであれば,<$ntryTitle$><$ntryBody$><$ntryMore$> などのタグのみを含むブロックは再構築の必要がありません。そのようなブロックには前回の再構築のタイミングでキャッシュされていた内容を流用することで,これらタグの構築処理を省略することができます。
 ところで <$MTInclude module="..."$> は,をモジュール化しているだけなので,モジュールに含まれるタグの再構築を省略することはできません。一方,KeyCached ではタグを一度構築した結果をキャッシュとして保存し,次回以降の再構築の際にタグを解析・構築する替わりに,保存されたキャッシュを利用するため,その部分の再構築処理の一切を省略できる点が異なります。

KeyCached の効果

 結果ページ全体を KeyCached を用いて高速化した場合の効果を測定してみました。機能は,の度に内部で構築処理が行われているため,キャッシュの恩恵が大きく現われます。結果は文字列にのみ依存しているものとします。実際には記事が追加/編集/削除されることを考慮する必要がありますが,とりあえずキャッシュの有効期間を短くすることで対応することにします。

#min [ms]mean [ms]max [ms]total [s]
KeyCached 無し
12,4542,8443,65728.45
22,6112,8563,34228.57
KeyCached 有り
18241,1972,11711.98
28851,3141,71113.15

のレンタルで稼動しているMTに対して,計測には Bench を使用しました。ab -n 10 -c 1 <URL>

 の最新版とマニュアルは KeyCached の Trac リポジトリを参照してください。

のお願い

 開発の継続のためには、書の購入やバグの修正、新機能の追加、欄でのユーザサポートなど、意外にお金と時間を費やします。そこで、「ビールでも奢ってやるか」ですとか「これで牛丼(並)でも食え」と仰るお方からのお申し出をいつでも受け付けております。どうぞ、よろしくお願いいたしますm(_ _)m
 金の送付には PayPal の小額決済をご利用いただけます。


この記事を読んだ人はこんな記事も読んでいます 記事リコメンデーションについて

その他の関連する記事


関連記事/トラックバック

関連記事/トラックバックはまだありません

この記事にトラックバックを送るには?

寄せられたコメント (全 17 件中、最新 5 件まで表示しています)

Posted by
ぴろり ◆OLEEi.VOX.
at
2010/03/03 18:45
ID
wXQLJVEI

ををを、ご寄付ありがとうございます!!
ダウンロードは以下のURLから可能です。どうぞご利用ください。(ややこしいですね)
http://lab.magicvox.net/trac/mt-plugins/changeset/135/KeyCached/trunk?old_path=%2F&format=zip

Posted by
杉原 広夫
at
2010/03/03 18:40
ID
b8DAvZL.

「KeyCached」をダウンロード、したいので寄付をしたのですが、ダウンロードできません。どうすれば良いでしょうか。

Posted by
せんのじ
at
2008/09/02 08:59
ID
IKSwl5Ak

確認ありがとうございます。
早速落とさせていただきました。

素晴らしいプラグインをどうもありがとうございました!

Posted by
ぴろり ◆OLEEi.VOX.
at
2008/09/01 12:52
ID
wLSUWaUw

申し訳有りません。サーバが不調でした。現在は接続できると思います。

Posted by
せんのじ
at
2008/09/01 11:52
ID
4fkf6.cA

初めまして。
再構築の重さにうんざりしており、
こういうプラグインをずっと探していました。
早速利用させていただこうと思い、
KeyCached の Trac リポジトリ
( http://lab.magicvox.net/trac/mt-plugins/wiki/KeyCached )
を開こうと何度も試しているのですが、なぜか繋がりません。

上記URLをクリックするだけでは入れないのでしょうか?

ご多忙とは思いますが、よろしくお願いします。

コメントを投稿する

 
 (匿名可/必須/公開)
 (匿名可/必須/非公開)
 (必須)
コメントスパム防止のため投稿前に ランダムな数字 CAPTCHAについて を入力してから投稿してください。お手数ですがご協力のほど宜しくお願いいたします。
 
MovableType, NovableType, JovableType, KovableType, MIvableType, M9vableType, M0vableType, MPvableType, MLvableType, MKvableType, MoCableType, MoFableType, MoGableType, MoBableType, MovQbleType, MovWbleType, MovSbleType, MovZbleType, MovaVleType, MovaGleType, MovaHleType, MovaNleType, MovabKeType, MovabOeType, MovabPeType, MovablWType, Movabl3Type, MovablRType, MovablDType, MovablSType, MovableRype, Movable5ype, Movable6ype, MovableYype, MovableGype, MovableFype, MovableTTpe, MovableT6pe, MovableT7pe, MovableTUpe, MovableTHpe, MovableTGpe, MovableTyOe, MovableTy0e, MovableTy-e, MovableTyLe, MovableTypW, MovableTyp3, MovableTypR, MovableTypD, MovableTypS プラグイン ソースコード ダウンロード