Redis 并发加锁
2016-04-07 15:37
525 查看
并发加锁
如果不是redis 集群,可以用multi
如果是集群就不行了,因为访问的redis是随机的
如果不是redis 集群,可以用multi
如果是集群就不行了,因为访问的redis是随机的
function lock($id,$expire){ $id = "lock_".$id; $now = time(); $expireTime = $now + $expire; $redis = Factory::getRedis(); $reult = $redis->setnx($id,$expireTime); if($result){//获得锁 return true; } //防止死锁判断过期 $value = $redis->get($id); //锁过期 if($value <= $now){ //竞争获取锁 $value = $redis->getSet($id,$expireTime); if($value <= $now){ return true; } } return false; }
相关文章推荐
- centos6.7 安装redis 3.0.7
- Redis的同步(主从复制)和Redis Sentinel
- Redis启动多端口,运行多实例(转)
- Java中使用Jedis操作Redis
- Redis存储Tomcat7集群的Session
- windows下安装redis
- 基于redis缓存的session共享
- Redis时延问题分析及应对
- Redis安装和配置
- Redis命令-有序集合-zcount
- 用Redis实现Session功能
- ssdb redis
- 分布式中使用Redis实现Session共享
- redis 学习笔记
- Redis基本使用
- Redis集群的部署
- Redis开源代码读书笔记九(Object模块)
- redis快速入门
- Redis 基本操作(一)
- Linux下编译redis和phpredis的方法