yii 的不同缓存控制

喜欢yii framework的原因是,体积小,速度快,而且所有的功能都具有,
以前用过zend,qeephp,我个人还是很喜欢qeephp的,只是作者不更新,我用了几年也没有更新,
而且像一些比较先进的应用,譬如mongodb就不支持,让我下决心用MVC还是考虑国际化一点。
下面总结一些yii使用缓存不同方法。
一。数据缓存,这个是少不了,譬如一些查询的数据库数据。
CFileCache 文件缓存

//文件缓存
        'FileCache'=>array(
            'class'=>'CFileCache',
        ),
//使用SQLite3
        'Dbcache'=>array(
            'class'=>'CDbCache.php',
        ),
//面缓存等
        'cache'=>array(
            'class'=>'CFileCache',
            'directoryLevel' => '1',
        ),

二,对整个页面进行缓存是必不可少的。
在 Controller里面添加 filters方法就行
里面有几个参数, duration 缓存时间,varyByParam,url参数,例如name=“test”, page=1,自行设置就行

public function filters()
    {

        return array(

            array(
            'COutputCache',
            'duration' => 36000,
            'varyByParam' => array('name')
            ),

        );
    }

三,局部动态
当整个页面缓存了,譬如用户的登录作息,这个是动态的
使用方法:在 view里面添加 <?php $this->rrenderDynamic('testDynamic'); ?>

其中 testDynamic 这个可以是 controller里面的方法,也可以是全局函数的字符串名
配合使用这三个常用的缓存策略后,可以满足大部分的需求了。