Redis事务

redis事务

事务为一组顺序执行的指令,通常不会被打断,事务的原子性表示这些指令要么都执行,要么都不执行。

关键词:

  1. multi //标记事务开端
  2. exec //执行该组事务
  3. discard //清除事务队列中所有指令,并结束当前事务
  4. watch //监控某一键值,事务执行过程中若键值变化则放弃本次事务,否则继续执行
  5. unwatch //放弃监控所有键值

redis使用multi标记事务开端,使用exec执行该组事务。

当压入事务队列过程中某一指令报错,则exec时全部不执行。

当exec执行过程中某一指令出现问题,如做数值加减失败,则错误指令不执行,其余执行。

multi			//标记事务开端,将后面的指令压入事务队列中
set k1 v1
set k2 v2
set k3 v3
exec			//执行该组指令

multi			//标记事务开端,将后面的指令压入事务队列中
set k1 v1
set k2 v2
set k3 v3
discard			//清除事务队列中所有指令,并结束当前事务

set version 1
watch version	//监控version键,若其发生变化则放弃事务执行
multi
set k1 v1
set k2 v2
set k3 v3
exec

set version 1
watch version	//监控version键,若其发生变化则放弃事务执行
unwatch		 	//放弃监控所有键值,包括version
multi
set k1 v1
set k2 v2
set k3 v3
exec

版权声明:本文为Arcofcosmos原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。