当前位置: 首页 > news >正文

Redis到底支不支持事务?半事务

redis是支持事务的,它与传统的关系数据库中的事务有所不同。

1.原子性:redis事务保证的是队列中的命令作为一个整体要么全部执行,要么全部不执行。但是,如果事务中的某个命令因为执行错误而失败,redis会继续执行事务中的其他命令,而不是回滚整个事务。

2. 无隔离级别:Redis 事务中的命令在提交前不会被实际执行,因此不存在 事务 传统数据库中的事务隔离级别问题,如脏读、不可重复读或幻读。 事务

3. 命令队列:当客户端发送 multi 命令后,所有随后的命令都会被放入一个 队列中,而不是立即执行。当 exec 命令被发送时,Redis 会尝试执行队列 中的所有命令。

4. 乐观锁:Redis 使用 watch 命令来实现乐观锁机制。客户端可以监控一个 或多个键,如果在执行 exec 之前这些键的值被其他客户端改变,事务将不 会执行。

5. 自动放弃:如果事务因为监控键被修改而不能执行,ex 事务 ec 命令将放弃当前 队列命令,返回 null。

6. discard 命令:如果客户端在发送 multi 之后决定放弃事务,可以使用 事务 discard 命令来清空事务队列并退出事务状态。 事务 事务

7. 有限的回滚:Redis 事务不支持命令级别的回滚。如果事务中的某个命令 事务 事务 失败,Redis 会停止执行后续命令,而不是回滚到事务开始前的状态。


http://www.mrgr.cn/news/64008.html

相关文章:

  • 《业务三板斧:定目标、抓过程、拿结果》读书笔记5
  • 基于Spring Boot的信息学科平台系统开发指南
  • 知识蒸馏概念(Knowledge Distillation)的学习
  • Git下载-连接码云-保姆级教学(连接Gitee失败的解决)
  • 在线QP(QuotedPrintable)编码解码工具
  • 从需求到实践:中国少儿编程教育的崛起与家长教育理念的变迁
  • 4款学术型AI神器,文献管理、论文投稿写作!
  • 300元左右的性价比头戴式耳机怎么选?盘点四款性价比爆表机型推荐
  • 【MySQL】 运维篇—故障排除与性能调优:案例分析与故障排除练习
  • SpringBoot中使用多线程ThreadPoolTaskExecutor+CompletableFuture
  • RHCE第五天笔记
  • 【论文源码实战】EdgeYOLO: 边缘设备友好的无锚框检测器
  • Linux高阶——1027—守护进程
  • LeetCode207. 课程表(2024秋季每日一题 55)
  • Mybatis-plus入门教程
  • 【深度学习基础】常用图像卷积核类型
  • 基于STM32的智能水族箱控制系统设计
  • 大学城水电资源管理:Spring Boot解决方案
  • 俗人只知《老子》该书,却不知李耳其人,可悲
  • 大屏可视化管理系统建设方案书(word原件)