`

redis之事务

阅读更多
Redis 事务可以一次执行多个命令, 并且带有以下两个重要的保证:
事务是一个单独的隔离操作:事务中的所有命令都会序列化、按顺序地执行。事务在执行的过程中,不会被其他客户端发送来的命令请求所打断。
事务是一个原子操作:事务中的命令要么全部被执行,要么全部都不执行。
一个事务从开始到执行会经历以下三个阶段:
开始事务。
命令入队。
执行事务。


以multi开始一个事务,然后将多个命令入队到事务中,最后由 EXEC 命令触发事务


redis 127.0.0.1:6379> multi     //开始事物
OK
redis 127.0.0.1:6379> set user_name zhnagshan    //命令入队到事务中...
QUEUED
redis 127.0.0.1:6379> get user_name
QUEUED
redis 127.0.0.1:6379> sadd books java
QUEUED
redis 127.0.0.1:6379> sadd books c++
QUEUED
redis 127.0.0.1:6379> smembers books
QUEUED
redis 127.0.0.1:6379> exec      //执行事务
1) OK
2) "zhnagshan"
3) (integer) 1
4) (integer) 1
5) 1) "c++"
   2) "java"


redis 127.0.0.1:6379> multi                    //开始事物
OK
redis 127.0.0.1:6379> set boo-name java
QUEUED
redis 127.0.0.1:6379> get boo-name
QUEUED
redis 127.0.0.1:6379> discard                  //discard 取消事务
OK



UNWATCH
取消 WATCH 命令对所有 key 的监视。



WATCH key [key ...]
监视一个(或多个) key ,如果在事务执行之前这个(或这些) key 被其他命令所改动,那么事务将被打断。

分享到:
评论

相关推荐

    记录redisson实现redis分布式事务锁

    自己封装redisson方法,同时通过注解的方式加入redis分布式事务锁,可靠。

    springboot-redis事务

    springboot-redis事务

    cpp-Redis分布式事务

    在大型游戏中经常使用分布式,分布式中因为游戏逻辑会经常游戏事务,借助redis某些特性我们可以实现分布式锁和分布式事务。

    redis事务与关系型数据库事务比较

    文档列举了redis环境的事务与关系型数据库的事务的区别

    08-Redis HyperLogLog与事务和Redis 7.0那点事-ev.rar

    08-Redis HyperLogLog与事务和Redis 7.0那点事_ev.rar08-Redis HyperLogLog与事务和Redis 7.0那点事_ev.rar08-Redis HyperLogLog与事务和Redis 7.0那点事_ev.rar08-Redis HyperLogLog与事务和Redis 7.0那点事_ev.rar...

    redis事务回滚工具

    基于SpringBoot的轻量级redis事务回滚机制,使用栈和ThreadLocal记录业务链的redis操作,发生异常进行回滚,参考了阿里巴巴Seata AT模式的db回滚策略:补偿回滚,记录前镜像与当前操作语句,反向解析生成补偿动作。...

    redis常用命令,redis配置文件,redis持久化,redis事务,redis主从复制,jedis的使用

    基于北京尚硅谷周阳老师讲解的redis。个人学习总结: 包含redis常用命令,redis配置文件,redis持久化,redis事务,redis主从复制,jedis的使用。

    Redis之Redis事务

    本文主要介绍了Redis事务的概念、Redis不保证原子性、Redis事务的三个阶段、Redis事务相关命令以及Redis事务使用案例。 本文来自于博客园,由火龙果软件Anna编辑、推荐。Redis事务的本质是一组命令的集合。事务支持...

    redis面试题之事务.zip

    redis面试题 redis面试题之事务

    redis_事务_.mp4

    Redis 事务的本质是一组命令的集合。事务支持一次执行多个命令,一个事务中所有命令都会被序列化。在事务执行过程,会按照顺序串行化执行队列中的命令

    redis_事务_.pptx

    Redis 事务的本质是一组命令的集合。事务支持一次执行多个命令,一个事务中所有命令都会被序列化。在事务执行过程,会按照顺序串行化执行队列中的命令

    Redis事务的使用

    一、Redis事务简介 Redis事务可以一次执行多个命令,一个事务的所有命令都会序列化并按顺序地串行化执行,而不会被其他客户端提交的命令请求插入到事务执行命令序列中。 二、Redis事务命令 下面的表格节选自:...

    大白话讲解Redis的事务

    Redis毕竟是非关系型数据库,他目前事务回滚机制是不执行命令,也就是可以采取watch命令模拟乐观锁,进行监听数据,发现数据不是事务开始时候的样子了,那么我这个事务里的命令就不会得到执行。 二、三大命令 首先看...

    基于rabbitmq+redis实现分布式事务项目源码.zip

    基于rabbitmq+redis实现分布式事务项目源码.zip 基于rabbitmq+redis实现分布式事务项目源码.zip 基于rabbitmq+redis实现分布式事务项目源码.zip 基于rabbitmq+redis实现分布式事务项目源码.zip 基于rabbitmq+redis...

    Redis学习笔记—Redis事务

    Redis事务可以一次执行多个命令(按顺序地串行执行,执行中不会被其他命令插入,不许加塞) 1.简介 Redis事务可以一次执行多个命令(允许在一次单独的步骤中执行一组命令)。 特征: [1]批量操作在发送EXEC命令前被放入...

    redis事务常用操作详解

    MULTI 、 EXEC 、 DISCARD 和 WATCH 是 Redis 事务相关的命令。事务可以一次执行多个命令, 并且带有以下两个重要的保证: 事务是一个单独的隔离操作:事务中的所有命令都会序列化、按顺序地执行。事务在执行的过程...

    redis事务.pdf

    Redis 事务可以一次执行多个命令, 并且带有以下三个重要的保证: 批量操作在发送 EXEC 命令前被放入队列缓存。 收到 EXEC 命令后进入事务执行,事务中任意命令执行失败,其余的命令依然被执行。 在事务执行...

    基于springboot , zookeeper , redis 分布式事务强一致性方案+源代码+文档说明

    FAT ,基于springboot , 使用zookeeper,redis , spring async , spring transactionManager的强一致性分布式事务解决方案 ## 框架介绍 纯编码方式,强一致性。 使用redis/zookeeper作为注册中心 ,代理事务的执行...

Global site tag (gtag.js) - Google Analytics