摘要:
(一)乐观锁 乐观锁介绍: 乐观锁( Optimistic Locking ) 相对悲观锁而言,乐观锁假设认为数据一般情况下不会造成冲突,所以在数据进行提交更新的时候,才会正式对数据的冲突与否进行检测,如果发现冲突了,则让返回用户错误的信息,让用户决定如何去做。那么我们如何实现乐观锁呢,一般来说有以 阅读全文
摘要:
(一)悲观锁: 最近学习了一下数据库的悲观锁和乐观锁,根据自己的理解和网上参考资料总结如下: 悲观锁介绍(百科): 悲观锁,正如其名,它指的是对数据被外界(包括本系统当前的其他事务,以及来自外部系统的事务处理)修改持保守态度,因此,在整个数据处理过程中,将数据处于锁定状态。悲观锁的实现,往往依靠数据 阅读全文
摘要:
(一)什么是MVCC? ①多版本并发控制【没有统一实现标准】【但是 大都实现了读操作 非阻塞;写操作 只锁定必要的行】 ②典型的实现方式:乐观并发控制(乐观锁);和 悲观并发控制(悲观锁)。 (二):什么是乐观锁,什么是悲观锁?what? ①:乐观锁:每次拿数据都不会上锁。【心态好】 ②:悲观锁:在 阅读全文
摘要:
(一)MySQL服务器架构: 图示: ①最上层服务:连接处理、授权认证,安全等。 ②第二层架构【核心服务】:查询解析、分析、优化、缓存、所有内置函数。 ③第三层【存储引擎】:负责MySQL中数据的存储和提取。 阅读全文
摘要:
(一)什么是读写锁? ①读锁:也叫共享锁 >互不阻塞。【多线程同步读】 ②写锁:也叫排他锁 >一个写锁会阻塞其他写锁。【单个线程写】 (二)锁粒度 锁策略:锁的开销和数据的安全性之间寻求平衡。 重要的两种锁策略: ①表锁:MySQL中最基本的锁策略,开销最小的策略。 ②行级锁:最大程度上支持并发处理 阅读全文