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修改后的值。

经验分享 程序员 微信小程序 职场和发展