Kek*_*koa 17 memcached clear invalidation
有没有办法根据通配符键使memcache中的条目无效?
所以,如果我有以下memcache键:
data/1
data/2
data/3
Run Code Online (Sandbox Code Playgroud)
有没有办法让这些键无效data/*?一举清除一堆陈旧数据将是非常有帮助的.
con*_*awg 23
最好的方法是在创建memcache密钥时提供版本控制密钥.我们通过提供在我们的系统上创建密钥的单个函数/方法来实现此目的.
$var1 = 123;
$var2 = 456;
$cacheKey = makeKey('monkeyInfo', $var1, $var2, ...);
Run Code Online (Sandbox Code Playgroud)
makeKey() 使用cacheKeyVersions数组中的信息并返回:
5:monkeyInfo:123:456
Run Code Online (Sandbox Code Playgroud)
注意开头的'5'.这来自keyNames =>版本的硬编码数组.因此,如果我们想要使系统中的每个'monkeyInfo'缓存值无效,我们只需要在数组中将该数字更改为6.从那时起,同一个电话将会寻找
6:monkeyInfo:123:456
Run Code Online (Sandbox Code Playgroud)
以下是密钥版本阵列的外观示例.' makeKey()'调用只是查看此数组以获取任何给定键的版本号.
$cacheKeyVersions = array(
'monkeyInfo' => 5,
'zebraInfo' => 2
);
Run Code Online (Sandbox Code Playgroud)
你可以做各种各样的事情来使实现符合你的需求,但这是它的基本要点.
| 归档时间: |
|
| 查看次数: |
10001 次 |
| 最近记录: |