Redis(四)事务

文章目录

  • 事务
    • Redis事务 vs 数据库事务
    • 常用命令
      • 总结

事务

一个队列中、一次性、顺序性、排他性执行一系列命令

官网https://redis.io/docs/interact/transactions/

Redis事务 vs 数据库事务

概述详述
1、单独的隔离操作Redis的事务仅仅是保证事务里的操作会被连续独占的执行,redis命令执行是单线程架构,在执行完事务内所有指令前是不可能再去同时执行其他客户端的请求的
2、没有隔离级别的概念因为事务提交前任何指令都不会被实际执行,也就不存在”事务内的查询要看到事务里的更新,在事务外查询不能看到”这种问题了
3、不保证原子性Redis的事务不保证原子性,也就是不保证所有指令同时成功或同时失败,只有决定是否开始执行全部指令的能力,没有执行到一半进行回滚的能力
4、排它性Redis会保证一个事务内的命令依次执行,而不会被其它命令插入

常用命令

在这里插入图片描述

  1. 正常执行
MULTI
EXEC
  1. 放弃事务
MULTI
DISCARD
  1. 全体连坐
    在执行前命令检查发现错误无法进入队列,会直接不执行
    在这里插入图片描述
    在这里插入图片描述

  2. 冤头债主
    在执行前命令检查没有发现错误进入队列,运行出现异常,能成功的命令执行成功,错误命令报错,无法回滚
    在这里插入图片描述在这里插入图片描述

  3. watch监控
    乐观锁类似CAS
    在这里插入图片描述
    watch命令是一种乐观锁的实现,Redis在修改的时候会检测数据是否被更改,如果更改了,则执行失败第一个窗口蓝色框第5步执行结果返回为空,也就是相当于是失败
    在这里插入图片描述

总结

  1. 开始:以MULTI开始一个事务
  2. 入队:将多个命令入队到事务中,接到这些命令不会立即执行,放到等待执行事务队列
  3. 执行:由EXEC命令触发事务

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/341457.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

梦想贩卖机升级版知识付费源码,包含前后端源码,非线传,修复最新登录接口问题

梦想贩卖机升级版,变现宝吸收了资源变现类产品的许多优势,并剔除了那些无关紧要的元素,使得本产品在运营和变现能力方面实现了质的飞跃。多领域素材资源知识变现营销裂变独立版本。 支持:视频、音频、图文、文档、会员、社群、用…

芯片设计中的ECO

如标题所写,我们今天聊一聊IC设计种的ECO。在展开关于ECO的概念之前,我们先大致捋下数字IC设计的流程,有助于我们后面的讨论。 数字IC设计流程简述 1、确定项目需求 根据市场或者芯片功能要求,设计芯片的spec,得到可…

锤科HandShaker修改版,支持安卓14、澎湃OS

如今几乎各家手机厂商都在布局生态,但PC端往往是最容易被忽略的一环,哪怕是很强的华为鸿蒙、小米澎湃,想要做到手机和电脑互联,也限制了笔记本机型 虽然我一直致力于解锁非小米电脑安装小米电脑管家,比如前几天刚刚更…

【QML COOK】- 008-自定义属性

前面介绍了用C定义QML类型,通常在使用Qt Quick开发项目时,C定义后端数据类型,前端则完全使用QML实现。而QML类型或Qt Quick中的类型时不免需要为对象增加一些属性,本篇就来介绍如何自定义属性。 1. 创建项目,并编辑Ma…

大模型LLM Agent在 Text2SQL 应用上的实践

1.前言 在上篇文章中「如何通过Prompt优化Text2SQL的效果」介绍了基于Prompt Engineering来优化Text2SQL效果的实践,除此之外我们还可以使用Agent来优化大模型应用的效果。 本文将从以下4个方面探讨通过AI Agent来优化LLM的Text2SQL转换效果。 1 Agent概述2 Lang…

探索web技术与低代码开发的融合应用

随着物联网、云计算和人工智能等技术的迅猛发展,现代软件开发正面临着日益增长的需求和复杂性。为了应对这一挑战,一种被称为低代码开发的快速、可视化开发方法逐渐崭露头角。本文将探讨低代码开发与web技术的融合应用,以及这种趋势对软件开发…

highlight.js 实现搜索关键词高亮效果

先看效果&#xff1a; 折腾了老半天&#xff0c;记录一下 注意事项都写注释了 代码&#xff1a; <template><div class"absolute-lt wh-full overflow-hidden p-10"><div style"width: 200px"><el-input v-model"keyword"…

k8s动态PV

当发布PVC之后可以生成PV&#xff0c;还可以再共享服务器上直接绑定和使用PV 动态PV需要两个组件&#xff1a; 存储卷插件&#xff0c;k8s本身支持的动态PV创建不包括NFS&#xff0c;需要声明和安装一个外插件 Provisioner&#xff1a;存储分配器。动态创建PV&#xff0c;然后…

SpringBoot+thymeleaf实战遇到的问题

目录 一、控制台&#xff1a; 二、数据库查询异常&#xff1a; 三、前后端错误校验 四、在serviceImp中需要添加一个eq条件&#xff0c;表示和数据库中的哪个字段进行比较&#xff0c;否则会查出所有数据&#xff0c;导致500 五、使用流转换数据更简洁 六、重复报错&#…

C#,入门教程(15)——类(class)的基础知识

上一篇&#xff1a; C#&#xff0c;入门教程(14)——字符串与其他数据类型的转换https://blog.csdn.net/beijinghorn/article/details/124004562 物以类聚&#xff0c;凡物必类。 类的使用&#xff0c;须遵循几个简单的原则&#xff1a; &#xff08;1&#xff09;能类则类&a…

简单的excel填充

简单的excel填充 先导入相关依赖 <dependency><groupId>org.apache.poi</groupId><artifactId>poi</artifactId><version>3.16</version></dependency><dependency><groupId>org.apache.poi</groupId><…

Unity URP下阴影锯齿

1.概述 在Unity开发的URP项目中出现阴影有明显锯齿。如下图所示&#xff1a; 并且在主光源的Shadow Type已经是Soft Shadows模式了。 2.URP Asset 阴影出现锯齿说明阴影质量不高&#xff0c;所以要先找到URP Asset文件进行阴影质量参数的设置。 1.打开PlayerSetting找到Graph…