摘要:
面对高并发是锁的实现要使用aop 实现,锁不能加在方法中,应为事务一般是方法结束后提交,而锁在finally 方法中提交,从而会出现锁已经解锁而事务还没来得及提交,下个锁获得到的数据就不对。 转载:https://www.cnblogs.com/xiohao/p/13996619.html 自己的结 阅读全文
摘要:
关于MySQL可重复读的理解 (一) 问题引入 描述问题之前,先理解一下两种锁的概念。 共享锁(S锁):如果事务T对数据A加上共享锁后,则其他事务只能对A再加共享锁,不能加排他锁。获准共享锁的事务只能读数据,不能修改数据。排它锁(X锁):如果事务T对数据A加上排他锁后,则其他事务不能再对A加任任何类 阅读全文
摘要:
说说MySQL事务的实现原理 开篇 相信大家都用过事务以及了解他的特点,如原子性(Atomicity),一致性(Consistency),隔离型(Isolation)以及持久性(Durability)等。今天想跟大家一起研究下事务内部到底是怎么实现的,在讲解前我想先抛出个问题: 事务想要做到什么效果 阅读全文
摘要:
MySQL之MVVC原理 什么是MVVC MVVC (Multi-Version Concurrency Control) (注:与MVCC相对的,是基于锁的并发控制,Lock-Based Concurrency Control)是一种基于多版本的并发控制协议,只有在InnoDB引擎下存在。MVCC 阅读全文
摘要:
MVCC实现 1)Mutli-Version Concurreny Control,多版本并发控制,读不加锁,读写不冲突。应用于 Read Commited 和 Repeatable read 两个事务隔离级别。 快照读: 普通的select,不加锁,读取记录的可见版本。 当前读:select... 阅读全文