Redis事务让一组命令在单个步骤中执行。事务中有两个属性,这说明如下:

  • 在一个事务中所有命令按顺序执行作为一个单一独立的操作。这是不可能的,到另一个客户端发出的请求被担任过Redis事务的执行过程中。

  • Redis事务也是原子的。原子就意味着要么所有命令都执行,要么都不进行处理。

例子







Redis事务由指令 MULTI 启动,然后需要传递事务,而且整个事务是通过执行命令执行后,执行命令的列表。

redis 127.0.0.1:6379> MULTI
OK
List of commands here
redis 127.0.0.1:6379> EXEC

例子

以下举例说明Redis的事务如何启动并执行。

redis 127.0.0.1:6379> MULTI
OK
redis 127.0.0.1:6379> SET tutorial redis
QUEUED
redis 127.0.0.1:6379> GET tutorial
QUEUED
redis 127.0.0.1:6379> INCR visitors
QUEUED
redis 127.0.0.1:6379> EXEC1) OK
2) "redis"
3) (integer) 1

Redis 事务指令

S.N. 命令 & 说明
1 DISCARD 
发出命令MULTI后丢弃所有
2 EXEC 
MULTI后执行发出所有命令
3 MULTI 
标记事务块的开始
4 UNWATCH 
取消所有的对应关注键
5 WATCH key [key ...] 
关注给定项,以确定执行MULTI/EXEC块