玖叶教程网

前端编程开发入门

Redis命令介绍(十三)MULTI & EXEC & DISCARD

综述

MULTI、EXEC、DISCARD、WATCH命令是Redis实现交易功能的基础。它允许多个命令在同一步原子性地实现。它包含两个特性:1、所有的命令都是有序执行的。2、所有的命令要么都执行,要么都不执行。

当命令本身存在语法错时,交易块不会被执行。当命令执行失败(如key存储数据类型与命令对应数据类型不一致)时,交易块的其余命令仍会执行。

Redis不支持交易块数据回滚的原因有两点:1、Redis命令仅会在语法错误和数据类型不一致的情况下失败。这两种情况都是编码错误,应能在开发阶段发现。2、Redis内核简单且快速,所以不支持回滚。

MULTI
…
EXEC


MULTI
…
DISCARD


MULTI

标记交易块的开始。在之后可以输入一系列的命令,并在EXEC命令之后原子执行。

命令参数
MULTI

选项
-无

返回值
-OK

时间复杂度
无

生效版本
1.2.0


EXEC

在MULTI之后输入。原子执行执行之前输入的一系列命令。

命令参数
EXEC

选项
-无

返回值
-Null reply 失败
-Array reply 每个命令的结果

时间复杂度
无

生效版本
1.2.0


DISCARD

在MULTI之后输入。放弃之前输入的一系列命令。

命令参数
DISCARD

选项
-无

返回值
-OK

时间复杂度
无

生效版本
2.0.0

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言