数据缓存、如何保证实时性又能减轻数据库的压力 [ 2.0 版本 ]
好困惑啊! 缓存到底应该怎么用? 既保证数据的实时性、又能减轻数据库的压力,看似简单的缓存,其实深奥无比,求大神们出招支援下!
共 3 个回答
-
缓存依赖 $dependency
/** * Stores a value identified by a key into cache. * If the cache already contains such a key, the existing value and * expiration time will be replaced with the new ones, respectively. * * @param mixed $key a key identifying the value to be cached. This can be a simple string or * a complex data structure consisting of factors representing the key. * @param mixed $value the value to be cached * @param integer $duration the number of seconds in which the cached value will expire. 0 means never expire. * @param Dependency $dependency dependency of the cached item. If the dependency changes, * the corresponding value in the cache will be invalidated when it is fetched via [[get()]]. * This parameter is ignored if [[serializer]] is false. * @return boolean whether the value is successfully stored into cache */ public function set($key, $value, $duration = 0, $dependency = null) { if ($dependency !== null && $this->serializer !== false) { $dependency->evaluateDependency($this); } if ($this->serializer === null) { $value = serialize([$value, $dependency]); } elseif ($this->serializer !== false) { $value = call_user_func($this->serializer[0], [$value, $dependency]); } $key = $this->buildKey($key); return $this->setValue($key, $value, $duration); }
共 2 条回复word1018808441 回复于 2015-05-20 22:44 回复这个是缓存依赖? 这个是设置缓存吧?
@word1018808441 这个缓存的时候,可以针对这个缓存做依赖,换句话说,就是你依赖的其他缓存变动,这个缓存就会失效
小伙儿 觉得很赞
word1018808441 重庆
注册时间:2015-03-24
最后登录:2018-07-04
在线时长:629小时49分
最后登录:2018-07-04
在线时长:629小时49分
- 粉丝49
- 金钱7395
- 威望40
- 积分14085