尚硅谷redis学习8-事务

  是什么?

  能干嘛?

  常用命令

  案例说明

  1、正常执行

  2、放弃事务

  3、全部放弃(全体连坐)

  4、只抛弃错误(冤头债主)

  5、watch监控

  

  悲观锁

  悲观锁(Pessimistic Lock), 顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁
  乐观锁

  乐观锁(Optimistic Lock), 顾名思义,就是很乐观,每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期间别人有没有去更新这个数据,可以使用版本号等机制。乐观锁适用于多读的应用类型,这样可以提高吞吐量,
  乐观锁策略:提交版本必须大于记录当前版本才能执行更新

  例子:

  初始化

  正常执行

  有外部修改:

  unwatch

  当watch的对象有变更时,操作会失败,可以执行unwatch,取消之前的watch后的操作,再重新watch执行,直到成功

  

  小结

  阶段分析

  特性

原文地址:https://www.cnblogs.com/liunianfeiyu/p/10317811.html

时间: 2024-10-09 07:09:07

尚硅谷redis学习8-事务的相关文章

尚硅谷redis学习1-NOSQL简介

本系列是自己学习尚硅谷redis视频的记录,防止遗忘,供以后用到时快速回忆起来,照抄视频和资料而已,没什么技术含量,仅给自己入门了解,我是对着视频看一遍再写的,视频地址如下:尚硅谷Redis视频 背景:传统型数据库面临的问题 传统型数据库架构的演变 从最开始的单机一路进化到缓存加集群加分库分表主从读书分离,但即使这样还是有问题得不到解决 今天最终已经成为了这个样子 为什么用NoSql NoSql更适合大数据的处理 特点 传统数据库的NoSql的比较 RDBMS - 高度组织化结构化数据 - 结构

尚硅谷redis学习1-NOSQL简介2

NoSql数据模型简介 聚合模型:KV键值,BSON 列族: 图形,这里的图形不是指真正的图形,而是关系图 NoSql数据库的四大分类 KV键值:BerkeleyDB,Redis,tair,memcache 文档型数据库:couchDB,mongoDB 列存储数据库:Cassandra,HBase,分布式文件系统 图关系数据库:Neo4J,InfoGrid 对比: 分布式数据库的CAP+BASE 传统的ACID:A(atom icity):原子性 C(Consistency):一致性 I(Iso

尚硅谷redis学习4-数据类型

redis的数据类型包括String,Hash(类似于JAVA里的map),List,Set,Zset(sorted Set) String(字符串) string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value. string类型是二进制安全的.意思是redis的string可以包含任何数据.比如jpg图片或者序列化的对象 . string类型是Redis最基本的数据类型,一个redis中字符串value最多可以是512M Hash(哈希)

尚硅谷redis学习7-持久化AOF

AOF比RDB优点在于数据的实时性高,经过设置后最多只会损失一秒钟的数据,而RDB最多可能损失上次备份到此次DOWM机间的数据 原理 配置文件 设置同步频率 重启redis,测试,可以看到数据在关机重启后恢复了 处理aof文件损坏 给aof文件加异常字符 关闭redis后发现已无法启动 修复aof文件,可以看到修改aof文件后redis启动成功 小总结 重写rewrite 配置文件 优劣势 小总结 和rdb如何使用 性能建议 原文地址:https://www.cnblogs.com/liunia

尚硅谷redis学习9-发布订阅

是什么? 图示说明 命令 例子 原文地址:https://www.cnblogs.com/liunianfeiyu/p/10317816.html

尚硅谷redis学习10-复制

是什么? 能干嘛? 怎么玩? 1) 初始情况 设置slave 日志查看 主机查看 备机日志 复制状态 觉见问题 1 切入点问题?slave1.slave2是从头开始复制还是从切入点开始复制?比如从k4进来,那之前的123是否也可以复制 从头复制 2 从机是否可以写?set可否?  从机是只读的 3 主机shutdown后情况如何?从机是上位还是原地待命  从机原地待命 4 主机又回来了后,主机新增记录,从机还能否顺利复制?  可以 5 其中一台从机down后情况如何?依照原有它能跟上大部队吗?

尚硅谷springboot学习14-自动配置原理

配置文件能配置哪些属性 配置文件能配置的属性参照 自动配置的原理 1).SpringBoot启动的时候加载主配置类,开启了自动配置功能 @EnableAutoConfiguration 2).@EnableAutoConfiguration 作用: 利用EnableAutoConfigurationImportSelector给容器中导入一些组件? 可以查看selectImports()方法的内容: List<String> configurations = getCandidateConfi

redis学习(5) - 事务

1.redis中的事务是一组命令的集合.一个事务中的命令,要么都执行,要么都不执行 2. MULTI    告诉redis:下面我发给你的命令属于同一个事务,先不要执行,而是把它们暂时存起来 OK SADD "user:1:followers" 2   发送命令 QUEUED                返回QUEUED表示这两条命令已经进入等待执行的事务队列中了 SADD "user:2:followers" 1 QUEUED EXEC            

Redis学习手册(事务)

概述: 和众多其它数据库一样,Redis作为NoSQL数据库也同样提供了事务机制.在Redis中,MULTI/EXEC/DISCARD/WATCH这四个命令是我们实现事务的基石.相信对有关系型数据库开发经验的开发者而言这一概念并不陌生,即便如此,我们还是会简要的列出Redis中事务的实现特征: 1). 在事务中的所有命令都将会被串行化的顺序执行,事务执行期间,Redis不会再为其它客户端的请求提供任何服务,从而保证了事物中的所有命令被原子的执行. 2). 和关系型数据库中的事务相比,在Redis