[Fswiki-dev] HTMLのキャッシュについて

Back to archive index

Naoki Takezoe takez****@aa*****
2004年 2月 9日 (月) 14:26:41 JST


竹添です。

# 先日以下のメールを送信したのですが、流れていないようなので
# もう一度…。

先に日記のほうに書いてしまいましたが、FSWikiを少しでも高速化
すべく、HTMLのキャッシュを試してみました。以下の3パターンで
ベンチマークを取ってみました。

(1)素のFSWiki
(2)ページ全体をキャッシュ
(3)プラグイン部分のみ動的に生成

(2)だとさすがに速いです。私の開発環境はかなりしょぼいマシン
なのですが、大きなページだと2倍ほどの速度になりました。bbs2
やcalenderなど、内部的にincludeを連発しているページだと
もっと違いができるかもしれません。

(3)は私の開発環境では(1)とほとんど変わりませんでした。
確かにコンマ数秒は速いのですが、苦労の割にはなんだかなぁ、
という感じです。やはりパース周りのボトルネックはパース処理
そのものよりもパーサ関連やプラグインなど大量のモジュールの
初期化であることがわかります。

で、結論なのですが、キャッシュモードとして(2)の方式を実装
しようと思います。ただし、それだけだとプラグインやクッキー
などで問題が発生してしまいますので以下のような対処法を提供
するつもりです。

・ページの更新があるたびに特定ページのキャッシュを更新する
  よう指定できるようにしておく。
・キャッシュ対象としないページを指定できるようにする。
・キャッシュモード時はクッキーを使用しないようにする。

キーワードの自動リンクやInterWikiに関してはキャッシュを更新
しないと反映されないという割り切りです。これでも用途によって
は充分ではないかと思います。

# オートリンクはしたいけどキャッシュもしたいという場合であれば
# 毎晩cronでキャッシュを削除することで1日単位でキーワードを
# 更新するなどの運用方法が考えられますよね。

もちろん、キャッシュモードをOFFにすれば今までどおり、毎回
動的にHTMLを生成するようにすることもできます(デフォルトでは
キャッシュモードはOFFです)。

一応、上記のような整理で行こうと思ってはいますが、悩みどころ
が多い機能でもあります。他に良いアイデアがありましたら是非
お聞かせください。

----
Naoki Takezoe <takez****@aa*****>



Fswiki-dev メーリングリストの案内
Back to archive index