zz log

zaininnari Blog

view キャッシュはファイルのみ

以下を読んで。(twitter記法も試してみる)

アクセスからキャッシュを表示する流れ

  1. web アクセス
  2. webroot/index.php へリライト
  3. dispatcher::dispatcher を呼びます
    • url のパース等を行います。
  4. dispatcher メソッド内から、cached メソッドが呼ばれます。
    • cached メソッド内では、キャッシュのチェックがファイルのみです。
  5. view キャッシュがあれば、それを出力します。
  6. view キャッシュがなければ、コントローラーが入力を処理し、controller::renderから、 View::_render クラスが呼ばれ、html 等を生成します。
    • view をキャッシュするならば、CacheHelper::__writeFile でファイルに書き込みます。

view キャッシュ がファイル以外でもできる可能性はある

http://irc.cakephp.org/logs/link/1383121#message1383121

から、

http://irc.cakephp.org/logs/link/1383130#message1383140

までで、
開発チームが認識しおり、将来的に対処したいと語っています。

自力でできるか

dispatcher クラス、View クラスを拡張し、
拡張したクラスを、[app/config/bootstrap.php] 等で読み込み、
controller::view プロパティ を書き換え
[app/webroot/index.php] の dispatcher クラスの部分を書き換えればできそうです。


ただし、メソッドのトレースが多くなるので、本家の対応を待つのが最良のようです。