memcache 缓存命名空间
来源:互联网 发布:波纹气功 知乎 编辑:程序博客网 时间:2024/05/07 22:47
/** * memcache 命名空间 * mc 本身不支持命名空间,但是我们可以利用mc本身的机制,来模拟命名空间 * 比如:你要清除一组数据,就需要用到命名空间 * */class Action{ public function index() { global $mc_wr; // 获取命名空间 $ns_key = $mc_wr->get("foo_namespace_key"); // 如果命名空间不存在,则设置一个 if($ns_key===false) $mc_wr->set("foo_namespace_key",time()); $otherParms = 'select * from user LIMIT 1'; // 根据命名空间生成唯一的key $my_key = "foo_".$ns_key.'_'.md5($otherParms); // 获取当前key下的缓存 $val = $mc_wr->get($my_key); if (!$val) { $value = 'wangdekang_'.time(); // 缓存不存在则设置缓存 600秒, 0为随机失效时间, 为失效时间添加随机秒数,防止瞬间所有缓存同时失效 $mc_wr->set($my_key,$value,600, 0); } echo $val; } public function clear_ns() { global $mc_wr; // 更新命名空间值,让当前命名空间的所有值失效, memcache自身的缓存失效机制,当缓存不在被访问,会通过LRU失效机制 $mc_wr->set('foo_namespace_key', time()); }}
github: https://github.com/myweishanli/memcache-namespace
0 0
- memcache 缓存命名空间
- memcache批量删除之命名空间法
- memcache缓存
- Memcache 缓存
- Memcache缓存
- 命名空间
- 命名空间
- 命名空间
- 命名空间
- 命名空间
- 命名空间
- 命名空间
- 命名空间
- 命名空间
- 命名空间
- 命名空间
- 命名空间
- 命名空间
- maven eclipse debug
- [BZOJ 2751] && [HAOI2012] 容易题(easy)
- memcache 缓存失效问题
- C# 线程中修改控件属性方式
- 基于奇异值分解(SVD)的图像压缩
- memcache 缓存命名空间
- 优质链接
- DM6437 PLL分析
- 学生信息管理系统项目完成总结
- android4.0以上 隐藏 虚拟按键,三种方法任选
- 2014-10-28-VS-发布
- 什么是FreeMarker?
- ubuntu 下安裝JDK apache-Tomcat mysql
- 解决:Cannot load ocl.dll library(error code 126). The ocil.dll library may be missing from the system