php中redis的exec的用法是什么
时间:2022-03-10 10:02
在Redis中,exec用于执行所有事务块内的命令,事务块内所有命令的返回值是按命令执行的先后顺序排列的,当操作被打断时,返回空值“nil”,语法为“redis > Exec”。 本文操作环境:Windows10系统、PHP7.1版、Dell G3电脑。 Redis Exec 命令用于执行所有事务块内的命令。 redis Exec 命令基本语法如下: 返回值 事务块内所有命令的返回值,按命令执行的先后顺序排列。 当操作被打断时,返回空值 nil 。 示例如下: 推荐学习:《PHP视频教程》 以上就是php中redis的exec的用法是什么的详细内容,更多请关注gxlsystem.com其它相关文章!php中redis的exec的用法是什么
redis 127.0.0.1:6379> Exec
# 事务被成功执行
redis 127.0.0.1:6379> MULTI
OK
redis 127.0.0.1:6379> INCR user_id
QUEUED
redis 127.0.0.1:6379> INCR user_id
QUEUED
redis 127.0.0.1:6379> INCR user_id
QUEUED
redis 127.0.0.1:6379> PING
QUEUED
redis 127.0.0.1:6379> EXEC
1) (integer) 1
2) (integer) 2
3) (integer) 3
4) PONG
# 监视 key ,且事务成功执行
redis 127.0.0.1:6379> WATCH lock lock_times
OK
redis 127.0.0.1:6379> MULTI
OK
redis 127.0.0.1:6379> SET lock "huangz"
QUEUED
redis 127.0.0.1:6379> INCR lock_times
QUEUED
redis 127.0.0.1:6379> EXEC
1) OK
2) (integer) 1
# 监视 key ,且事务被打断
redis 127.0.0.1:6379> WATCH lock lock_times
OK
redis 127.0.0.1:6379> MULTI
OK
redis 127.0.0.1:6379> SET lock "joe" # 就在这时,另一个客户端修改了 lock_times 的值
QUEUED
redis 127.0.0.1:6379> INCR lock_times
QUEUED
redis 127.0.0.1:6379> EXEC # 因为 lock_times 被修改, joe 的事务执行失败
(nil)