使用YII缓存注意事项

在使用YII自身缓存时,在main.php文件配置中一定要配置keyPrefix,如下图:

‘cache‘ => array(
  ‘class‘ => ‘CFileCache‘,
  ‘keyPrefix‘ => ‘ivyonline‘,
),

如果不配置,造成缓存删除不了的问题(另:自己生成的缓存,自己可以删除),上YII源码如下:

/**
* Initializes the application component.
* This method overrides the parent implementation by setting default cache key prefix.
*/
public function init()
{
      parent::init();
      if($this->keyPrefix===null)
           $this->keyPrefix = Yii::app()->getId();
      }

/**
* @param string $key a key identifying a value to be cached
* @return string a key generated from the provided key which ensures the uniqueness across applications
*/
protected function generateUniqueKey($key)
{
       return $this->hashKey ? md5($this->keyPrefix.$key) : $this->keyPrefix.$key;
}

时间: 2024-08-07 02:00:50

使用YII缓存注意事项的相关文章

YII缓存依赖的应用

YII缓存依赖的应用 缓存 缓存依赖 Yii 缓存是提升Web应用性能的简便有效的方式.当我们在加载网页需要过多的时间,比如说查询时间过久,抑或是调用接口占用过多I/O,建立缓存是一个行之有效的方法,它可以避免多次加载页面缓慢的不良用户体验.但是网页中数据并不是一成不变的,它是变化的,就如查询有不同条件不同内容,所以我们缓存的内容也要随之变化,这就是缓存依赖所存在的必要性. 设置缓存 一般情况下,我们会给缓存的变量设置过期时间,到了过期时间,该变量也就随之有效,下次加载就必须重新生成缓存,这就是

YII缓存Cache

缓存Cache 定义:将数据暂时存放在一个存储速度更快的介质上,下次读取数据时就可以从这个介质上来读取数据 介质:内存.文件.数据库(优化好的数据库) Yii缓存的分类:(framework/caching/)在main.php中设置缓存时要用 CDbCache.php数据库缓存 CFileCache.php文件缓存 CMemCache.php内存缓存 文件缓存分类: 片段缓存 页面缓存 动态缓存 数据缓存 在main.php全局配置文件中设置缓存 'components'=>array( &quo

yii 缓存探究

1.在配置文件中 //在权威指南上是'cache' 其实可以根据不同的缓存组件起不同的名称 //memcache缓存 'memcache' => array( 'class' => 'system.caching.CMemCache', 'servers' => array( array('host' => '127.0.0.1', 'port' => 11211,'weight'=>40)), /* * yii中的memcache可以理解为在原始memcache的基础

yii 缓存之apc

首先yii CApcCache 实现了一个针对APC的缓存应用组件,常见的缓存操作方法get,set,add,delete,flush... 下面说说配置: 1. 在config/main.php components 组件下添加: 'apccache'=>array( 'class'=>'system.caching.CApcCache' ), 2.下载php_apc.dll,文件放到php/ext 下,搜索时可能会比较麻烦.... 3.在php.ini 中添加php_apc扩展: exte

浏览器缓存注意事项

缓存配置的一些注意事项 ① 只有get请求会被缓存,post请求不会 ② Etag 在资源分布在多台机器上时,对于同一个资源,不同服务器生成的Etag可能不相同,此时就会导致304协议缓存失效,客户端还是直接从server取资源.可以自己修改服务器端etag的生成方式,根据资源内容生成同样的etag. ③ 系统上线,更新资源时,可以在资源uri后边附上资源修改时间.svn版本号.文件md5 等信息,这样可以避免用户下载到缓存的旧的文件 ④ 观察chrome的表现发现,通过链接或者地址栏访问,会先

YII缓存整理

缓存 缓存是用于提升网站性能的一种即简单又有效的途径.通过存储相对静态的数据至缓存以备所需,我们可以省去生成这些数据的时间.在 Yii 中使用缓存主要包括配置和访问缓存组件 . 如下的应用配置指定了一个使用两台缓存服务器的 memcache 缓存组件: [plain] view plaincopyprint? array( ...... 'components'=>array( ...... 'cache'=>array( 'class'=>'system.caching.CMemCac

Yii作为PHP非常火的开源框架,对缓存的支持还是很全面的。

Yii缓存可以在不同的级别使用和环境使用:可用来缓存单个数据(yii数据缓存).缓存一个由视图脚本生成的页面片断(片段缓存).最高级别,可存储整个页面以便需要的时候直接 从缓存读取. 本文说明页面缓存级别1的配置及实现效果:Yii的自带缓存都继承CCache 类, 在使用上基本没有区别,缓存基础类 CCache 提供了两个最常用的方法:set() 和 get().要在缓存中存储变量 $value,我们选择一个唯一 ID 并调用 set() 来存储它. 缓存基础类 CCache 提供了两个最常用的

Yii框架分布式缓存的实现方案

声明:本文阅读对象最好是对Yii和分布式缓存有一定了解的人群,否则理解和掌握上有一些困难,建议阅读之前做好以上两点基础准备. YiiFramework简称Yii,读作易,代表简单(easy).高效(efficient).可扩展(extensible),Yii将面向对象思想以及代码的重用性发挥到了极致,尤其是在缓存的支持上,Yii是最有效率的PHP框架之一. Yii的缓存支持封装在框架核心的caching文件夹下面,如下图是Yii支持的缓存存储介质. 如果要做跨Session和请求的分布式缓存,可

YII框架——数据缓存

YII框架——数据缓存 YII缓存的配置: YII目录/config/web.php文件,配置cache数组下,class数组的值,默认为yii\caching\FileCache. 2.缓存的使用:获取缓存组件: $cache=\YII::$app->cache; 添加缓存数据: $cach->add(key,value[,time][,dependency]); 参数: Key 键   Value 值   Time 可选,缓存有效期   Dependency 可选,依赖方式 返回值: