Redis事务详述

Redis提供简单但有效的事务机制,确保多个指令串行执行。事务非原子性,但保证了指令顺序。MULTI、EXEC、DISCARD、WATCH、UNWATCH是其核心指令。在Jedis中,可以通过示例代码演示如何使用事务处理如余额增加的操作。
摘要由CSDN通过智能技术生成

 本文已收录于专栏

❤️《Redis之大厂必备技能包》❤️

上千人点赞收藏,全套Redis学习资料,大厂必备技能!


目录

1、简介

2、指令介绍

2.1 简介

2.2 MULTI(开启事务)

2.3 EXEC(执行事务)

2.4 DISCARD(取消事务)

2.5 WATCH(监视)

2.6 UNWATCH

3、Jedis 使用事务


1、简介

Redis类似大多数成熟的数据库系统一样,提供了事务机制。Redis的事务机制非常简单,它没有严格的事务模型,无法像关系型数据库一样保证操作的原子性。
Redis事务最大的作用是保证多个指令的串行执行,它可以借助于Redis单线程读写的特性,保证Redis事务中的指令不会被事务外的指令打搅,不过要注意它不是原子性的

完整事务案例:

image.png

multi开启一个事务之后,所有指令都不执行,而是缓存到事务队列中,直到服务器接收到exec指令,才开始执行整个事务中的指令。事务全部指令执行完毕后,一次性返回全部的结果。

事务指令执行.png

使用Redis事务,一个最需要注意的问题是,指令多,网络开销高;因此我们一定要结合管道pipeline一起使用,这样可以将多次网络io操作压缩成单次。

2、指令介绍

2.1 简介

Redis事务相关的指令有五个,分别是MULTI、EXEC、DISCARD、WATCH、UNWATCH

指令 指令作用 返回值
MULTI 标记一个事务块的开始 总是返回 OK
EXEC 执行所有事务块内的命令 事务块内所有命令的返回值,按命令执行的先后顺序排列。当操作被打断时,返回空值 nil
DISCARD 取消事务,放弃执行事务块内的所有命令,如果正在使用 WATCH
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李子捌

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值