首页 > 代码库 > Redis进阶 ----事务
Redis进阶 ----事务
1.事务
1.1 MULTI和EXEC命令
发送MULTI命令,声明事务;EXEC执行事务
Redis不支持事务回滚
redis 127.0.0.1:6379> SET key 1 OK redis 127.0.0.1:6379> SET key 2 OK redis 127.0.0.1:6379> SADD key 3 (error) ERR Operation against a key holding the wrong kind of value redis 127.0.0.1:6379> SADD key 3 4 (error) ERR Operation against a key holding the wrong kind of value redis 127.0.0.1:6379> SADD keynew 3 (integer) 1 redis 127.0.0.1:6379> MUTIL (error) ERR unknown command ‘MUTIL‘ redis 127.0.0.1:6379> MULTI OK redis 127.0.0.1:6379> SET key 3 QUEUED redis 127.0.0.1:6379> SET keynew 4 QUEUED redis 127.0.0.1:6379> EXEC 1) OK 2) OK redis 127.0.0.1:6379> GET key "3" redis 127.0.0.1:6379> GET keynew "4" redis 127.0.0.1:6379>
1.2 Watch命令
监控某个键值,如果被修改,阻止后面的事务执行。仅仅防御性质的。
redis 127.0.0.1:6379> SET key 1 OK redis 127.0.0.1:6379> WATCH key OK redis 127.0.0.1:6379> MULTI OK redis 127.0.0.1:6379> SET key 2 QUEUED redis 127.0.0.1:6379> EXEC 1) OK redis 127.0.0.1:6379> GET key "2" redis 127.0.0.1:6379>
redis 127.0.0.1:6379> SET keywatch 1 OK redis 127.0.0.1:6379> SET keywatch 2 OK redis 127.0.0.1:6379> WATCH keywatch OK redis 127.0.0.1:6379> SET keywatch 3 OK redis 127.0.0.1:6379> MULTI OK redis 127.0.0.1:6379> SET keywatch 8 QUEUED redis 127.0.0.1:6379> EXEC (nil) redis 127.0.0.1:6379> GET keywatch "3" redis 127.0.0.1:6379>
Redis进阶 ----事务
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。