一、背景

  • 在事务执行之前有其他命令修改了key值

首先我们开两个客户端:

[015]Redis | 事务(三)-Watch解决问题

 

客户端一对name(key)执行事务操作,客户端二在事务未执行之前将name(key)修改

[015]Redis | 事务(三)-Watch解决问题

 以上发现:name仅仅是按照事务处理之后的设置!!!

怎样解决这个问题?

 

二、Watch

[015]Redis | 事务(三)-Watch解决问题

 以上图片来源于:《Redis官网-Redis Watch 命令》

 

三、具体操作

[015]Redis | 事务(三)-Watch解决问题

事务执行之前这个(或这些) key 被其他命令所改动,那么事务将被打断!!! 

 

 

相关文章: