资讯专栏INFORMATION COLUMN

北哥大话Yii2缓存机制 - DbCache

PAMPANG / 707人阅读

摘要:数据库缓存并不麻烦,基本用法依然符合缓存的统一接口,具体方法可以在里查看。会被的函数引用,该函数被和触发。

数据库缓存并不麻烦,基本用法依然符合yii2缓存的统一接口,具体方法可以在 http://nai8.me/sapper-view.ht... 里查看。

如果要启动数据库缓存,必须要有一个数据库及数据表,这些可以通过cache的配置文件完成

"cache" => [
    "class" => "yiicachingDbCache",
    "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" => "yiicachingDbCache",
    "db" => "cachedb",
    "cacheTable" => "cache",
    "keyPrefix"=>"nai8_"
],

配置后,缓存的键值会增加一个前缀,防止多个系统/模块公用一个缓存数据库带来的冲突问题,如下图所示:

gcProbability 垃圾回收机制,该值必须为0-1000000中的一个数字,默认为100,代表100/1000000 = 0.01%的概率回收已经过期的缓存。

gcProbability会被DbCache的gc函数引用,该函数被add()和set()触发。当然如果你设置gcProbability=0,则不进行垃圾回收操作。

"cache" => [
    "class" => "yiicachingDbCache",
    "db" => "cachedb",
    "cacheTable" => "cache",
    "gcProbability"=>200
],

以上就是DbCache的基本使用方法及一些要注意的配置。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/61855.html

相关文章

  • 北哥大话Yii2缓存机制 - File缓存

    摘要:讲的好长作为北哥大话缓存机制第一篇,希望大家喜欢,为了一段日子里我会专注于分享的缓存机制。 有的兄弟一定会说,File缓存有什么好讲的那?不就是一个set,然后在一个get么?那你知道的只是皮毛~ 的确如大家所说,缓存从表现层看就是一个set(放数据),然后再一个get(拿数据),但是请记住,这样是不够的,如果你不了解每个缓存的实现原理、存储特点等等,你是无法使用对场景的,什么时候用F...

    cnTomato 评论0 收藏0
  • 北哥大话Yii2缓存机制 - 缓存依赖

    摘要:我们都知道,的缓存是支持依赖的,就是我们设置的缓存是否失效除了过期时间还决定于它所依赖的东东是否变化。用好依赖将大大提高我们使用缓存的效果,本节讲解缓存的种依赖方式。现在我们仍然通过一个例子说明,假设我们的一个缓存同时依赖于两个依赖。 我们都知道,yii2的缓存是支持依赖的,就是我们设置的缓存是否失效除了过期时间还决定于它所依赖的东东是否变化。 用好依赖将大大提高我们使用缓存的效果,本...

    klivitamJ 评论0 收藏0
  • PHP最常用函数TOP100(翻译)

    摘要:原作者分析了多个项目对函数的使用情况得到如下结果,当然有可能你最常用的不在这个列表,北哥建议初学者对这些函数一一仔细研究。分析最常用的函数是字符串函数,然后是数组,然后是文件。以上个函数没有近期要丢弃的计划。数据库操作也不纳入此排名。 这是一篇外文,翻译给大家。原作者分析了1900多个项目对php函数的使用情况得到如下结果,当然有可能你最常用的不在这个列表,北哥建议PHP初学者对这些函...

    _ipo 评论0 收藏0

发表评论

0条评论

PAMPANG

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<