redis的Watch机制是什么?
watch机制
Redis Watch 命令用于监视一个(或多个) key ,如果在事务执行之前这个(或这些) key 被其他命令所改动,那么事务将被打断
语法 redis Watch 命令基本语法如下: WATCH key [key …]
验证:
首先开启两个redis客户端,客户端1和客户端2.
-
1、客户端1中,先set一个值
redis 127.0.0.1:6379> set number 10 OK
-
2、客户端1开启Watch 此值。
redis 127.0.0.1:6379> watch number OK
-
3、客户端1开启事务,修改此值
redis 127.0.0.1:6379> multi OK redis 127.0.0.1:6379> set number 100 QUEUED redis 127.0.0.1:6379> get number QUEUED redis 127.0.0.1:6379>
注意此时先不要exec执行
-
4、客户端2,去修改此值
redis 127.0.0.1:6379> set number 500 OK
-
5、客户端1,执行exec执行
redis 127.0.0.1:6379> exec (nil) redis 127.0.0.1:6379> get number "500"
发现为nil,执行未成功,获取的值为客户端2修改后的值。
