专栏名称: 顶尖架构师栈
分享业务架构、技术架构、系统设计方案,以及微服务架构源码,提供业务场景答疑
今天看啥  ›  专栏  ›  顶尖架构师栈

【12期】乐观锁与悲观锁

顶尖架构师栈  · 公众号  ·  · 2024-09-18 07:53
    

文章预览

    面试中我们经常被问到乐观锁与悲观锁,这两者其实是处理并发问题的手段,是人为定义的概念,可以认为是一种程序思维,起初是用于关系型数据库中并发控制的技术,如行锁、表锁、读锁、写锁等,而现在,乐观、悲观的并发控制理论,不再是狭义的DBMS中的锁概念,它更多的是一种编程思想,即对应生活中的乐观和悲观的两种思考模式,乐观:事情总是朝着好的方向发展;悲观:总觉着事情会朝最坏的方向发展 1 乐观锁 1.1 概述 总是假设最好的情况,每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期间别人有没有去更新这个数据,主要通过CAS算法和版本号机制实现。乐观锁适用于多读的应用类型,这样可以提高吞吐量,像数据库提供的write_condition机制,其实都是提供的乐观锁。 1.2 应用场景-C ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览