北哥大话Yii2缓存机制 - DbCache
2017-04-09 16:55
337 查看
数据库缓存并不麻烦,基本用法依然符合yii2缓存的统一接口,具体方法可以在 http://nai8.me/sapper-view.html?id=27 里查看。
如果要启动数据库缓存,必须要有一个数据库及数据表,这些可以通过cache的配置文件完成
参数说明
db参数如果不设置会使用yii默认的db.php内的配置文件
cacheTable表需要提前在数据库内建立
cacheTable的初始化脚本
当然我推荐大家重新建立一个数据库来存放缓存表。
虽然DbCache配置和管理并不复杂,但是有些参数还是要注意下
** keyPrefix ** 缓存键值前缀
配置后,缓存的键值会增加一个前缀,防止多个系统/模块公用一个缓存数据库带来的冲突问题,如下图所示:
** gcProbability ** 垃圾回收机制,该值必须为0-1000000中的一个数字,默认为100,代表100/1000000 = 0.01%的概率回收已经过期的缓存。
gcProbability会被DbCache的gc函数引用,该函数被add()和set()触发。当然如果你设置gcProbability=0,则不进行垃圾回收操作。
以上就是DbCache的基本使用方法及一些要注意的配置。
如果要启动数据库缓存,必须要有一个数据库及数据表,这些可以通过cache的配置文件完成
'cache' => [ 'class' => 'yii\caching\DbCache', 'db' => 'cachedb', 'cacheTable' => 'cache', ],
参数说明
db参数如果不设置会使用yii默认的db.php内的配置文件
cacheTable表需要提前在数据库内建立
cacheTable的初始化脚本
CREATE TABLE cache ( id char(128) NOT NULL PRIMARY KEY, expire int(11), data BLOB );
当然我推荐大家重新建立一个数据库来存放缓存表。
虽然DbCache配置和管理并不复杂,但是有些参数还是要注意下
** keyPrefix ** 缓存键值前缀
'cache' => [ 'class' => 'yii\caching\DbCache', 'db' => 'cachedb', 'cacheTable' => 'cache', 'keyPrefix'=>'nai8_' ],
配置后,缓存的键值会增加一个前缀,防止多个系统/模块公用一个缓存数据库带来的冲突问题,如下图所示:
** gcProbability ** 垃圾回收机制,该值必须为0-1000000中的一个数字,默认为100,代表100/1000000 = 0.01%的概率回收已经过期的缓存。
gcProbability会被DbCache的gc函数引用,该函数被add()和set()触发。当然如果你设置gcProbability=0,则不进行垃圾回收操作。
'cache' => [ 'class' => 'yii\caching\DbCache', 'db' => 'cachedb', 'cacheTable' => 'cache', 'gcProbability'=>200 ],
以上就是DbCache的基本使用方法及一些要注意的配置。
相关文章推荐
- 北哥大话Yii2缓存机制 - 缓存依赖
- 北哥大话Yii2缓存机制 - File缓存
- linux下的缓存机制及清理buffer/cache/swap的方法梳理
- Java中常用缓存Cache机制的实现
- 【状态保持】Cache 基于SQL 数据库 的缓存依赖 轮询机制详解
- ZendFramework中使用Cache缓存机制
- Java 中常用缓存Cache机制的实现
- HTML 5缓存机制:Cache Manifest配置实例
- Java中常用缓存Cache机制的实现
- Java缓存Ehcache-Ehcache的Cache预热机制及代码实现(Cache Warming for multi-tier Caches)
- .NET中Application,Session,Cookie,ViewState,Cache,Hidden 缓存机制
- Java中常用缓存Cache的实现机制详解
- android WeakReference(弱引用 防止内存泄漏)与SoftReference(软引用 实现缓存机制(cache))
- HTTP协议(缓存机制Cache)
- Java 中常用缓存Cache机制的实现
- Java 中常用缓存Cache机制的实现
- Java 中常用缓存Cache机制的实现
- HTML 5缓存机制:Cache Manifest配置实例
- Java中常用缓存Cache机制的实现
- Java中常用缓存Cache机制的实现