美文网首页
Redis事务详解

Redis事务详解

作者: 剑客kb | 来源:发表于2018-12-08 15:04 被阅读0次

1、Redis通过MULTI、EXEC、WARCH命令来实现事务,在同一个事务中的命令会一次性顺序的被执行,期间不会被打断,但是在EXEC命令执行之前,redis服务器可以执行其他的命令

127.0.0.1:6379> MULTI
OK
127.0.0.1:6379> SET "name" 32
QUEUED
127.0.0.1:6379> get name
QUEUED
127.0.0.1:6379> set ab ab
QUEUED
127.0.0.1:6379> exec
1) OK
2) "32"
3) OK
127.0.0.1:6379> 

2、MULTI命令执行表示客户端开启事务模式,通过把客户端的REDIS_MULTI标识打开实现。当客户端发送来的命令是EXEC(执行事务)、DISCARD(丢弃事务中命令)、WATCH、MULTI这四个命令的一个,服务器立即执行该命令;否则只是把命令入队列。
3、WATCH命令是一个乐观锁,所有对数据库的修改命令,执行之后都会把被修改键的REDIS_DIRTY_CAS标识打开,标识该事务不安全,此时如果客户端有使用WARCH key,那么只要事务中包含这个key,就会执行失败。
4、如果命令入队列时,出现基本语法错误,则事务中所有命令不会执行,

127.0.0.1:6379> multi
OK
127.0.0.1:6379> set name 43
QUEUED
127.0.0.1:6379> ge n2
(error) ERR unknown command `ge`, with args beginning with: `n2`, 
127.0.0.1:6379> exec
(error) EXECABORT Transaction discarded because of previous errors.
127.0.0.1:6379> get name
"23"
127.0.0.1:6379> 

如果执行出错,则不会中断事务

127.0.0.1:6379> get name
"23"
127.0.0.1:6379> multi
OK
127.0.0.1:6379> set name 45
QUEUED
127.0.0.1:6379> multi
(error) ERR MULTI calls can not be nested
127.0.0.1:6379> set name 67
QUEUED
127.0.0.1:6379> exec
1) OK
2) OK
127.0.0.1:6379> get name
"67"
127.0.0.1:6379> 

相关文章

  • Redis详解1.安装及使用

    章节目录Redis详解1.安装及使用Redis详解2.数据结构Redis详解3.发布订阅Redis详解4.事务Re...

  • Redis详解5.数据持久化

    章节目录Redis详解1.安装及使用Redis详解2.数据结构Redis详解3.发布订阅Redis详解4.事务Re...

  • Redis详解4.事务

    章节目录Redis详解1.安装及使用Redis详解2.数据结构Redis详解3.发布订阅Redis详解4.事务Re...

  • Redis详解8.Cluster模式

    章节目录Redis详解1.安装及使用Redis详解2.数据结构Redis详解3.发布订阅Redis详解4.事务Re...

  • Redis详解6.主从模式

    章节目录Redis详解1.安装及使用Redis详解2.数据结构Redis详解3.发布订阅Redis详解4.事务Re...

  • Redis详解7.哨兵模式

    章节目录Redis详解1.安装及使用Redis详解2.数据结构Redis详解3.发布订阅Redis详解4.事务Re...

  • Redis详解2.数据结构

    章节目录Redis详解1.安装及使用Redis详解2.数据结构Redis详解3.发布订阅Redis详解4.事务Re...

  • Redis的事务功能详解

    原文来源Redis的事务功能详解MULTI、EXEC、DISCARD和WATCH命令是Redis事务功能的基础。R...

  • Redis 事务详解

    https://redisbook.readthedocs.io/en/latest/feature/transa...

  • Redis事务详解

    1、Redis通过MULTI、EXEC、WARCH命令来实现事务,在同一个事务中的命令会一次性顺序的被执行,期间不...

网友评论

      本文标题:Redis事务详解

      本文链接:https://www.haomeiwen.com/subject/earqhqtx.html