phpGrace 缓存机制说明
在项目开发过程中我们经常会利用缓存来缓解数据查询、复杂运算带来的服务器压力以应对高并发!
phpGrace 封装了简洁高效的缓存方案,支持文件、memcache、redis三种形式的缓存方式。
设置缓存类型及相关配置 /phpGrace/config.php(全局配置)
<?php return array( ...... //支持的缓存类型 'allowCacheType' => array('file', 'memcache', 'redis'), //缓存设置 'cache' => array( 'type' => 'memcache', //支持类型 : file [文件型], memcache , redis //以下配置为 memcache 及 redis 类型缓存的必须设置 'host' => '127.0.0.1', //主机地址 'port' => '11211', //端口 memcache 一般端口为 11211, redis 一般为 6379 'pre' => 'grace_' //缓存变量前缀 ) );
统一规则的缓存操作方法【控制器成员方法】:
cache($name, $id = null, $queryMethod, $timer =3600, $isSuper = true)
php 控制器内置了统一的缓存处理函数 cache,此方法会动态的判断缓存的有效性,并根据实际情况去调用数据查询、运算等方法。
参数:
1、缓存名称 2、影响id 【可以是字符串的组合】 3、数据车查询函数 4、有效期【可选参数,默认 3600秒】 5、是否为全局缓存【可选参数,默认 是】 【是】缓存名称格式:缓存前缀+缓存名称+影响id 【否】缓存名称格式:缓存前缀+控制器名称+方法名称+缓存名称+影响id
调用:
在控制器内容直接使用 cache 函数即可:
$this->cache('test', '1002abc', '__查询函数名称');
删除指定的缓存 removeCache($name, $id = null, $isSuper = true)
参数:
1、缓存名称 2、影响id 3、是否全局
清空缓存 clearCache
使用 clearCache 函数可以快速的情况所有缓存
开发环境下一句代码关闭全部缓存
在入口页面添加以下代码即可关闭所有缓存!
define('PG_CLOSE_CACHE', true);
为什么要这样??
您可以预先写好缓存代码,数据在开发时是实时的,当开发完成、测试完毕删除这行代码,服务器端就可以完美运行在缓存环境下了 ^_^