1.加锁
function pLocked($key, $value, $time = 60) { $predis = new Common\Common\Predis(); $result = $predis->set($key,$value,'ex',$time,'nx'); return $result; }
2.解锁
/** * 使用 Lua 命令进行解锁 * @param String $key * @param String $value (此处建议使用随机值,以确保删除的就是此锁) */ function unplocked($key,$value) { $script = ' if redis.call("get",KEYS[1]) == ARGV[1] then return redis.call("del",KEYS[1]) else return 0 end '; $predis = new Common\Common\Predis(); $result = $predis->peval($script, 1, $key, $value); return $result; }