发布于:
2022-06-29 11:43:43
$predis = new Predis\Client( [ 'scheme' => 'tcp' , 'host' => '127.0.0.1' , 'port' => 6379 ] ); $predis->connect(); $predis->auth( "redis_password" ); // 密码验证 $predis->select( $dbIndex ); // 选择所使用的数据库, 默认有16个 redis集群选择0 $is_lock = $predis->exists( $lock_key ); //锁存在 if( $is_lock ) { //返回系统繁忙等错误提示 return false; } try { $predis->set( $lock_key , 1 , 'EX' , 3 , 'NX' ); // 加锁,持续3秒 //执行业务代码 $predis->del( $lock_key );//解锁 return true; } catch( Exception $e ) { $predis->del( $lock_key );//发生异常也解锁 }