悲观锁(Pessimistic Lock), 顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。
乐观锁(Optimistic Lock), 顾名思义,就是很乐观,每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期间别人有没有去更新这个数据,可以使用版本号等机制。乐观锁适用于多读的应用类型,这样可以提高吞吐量,像数据库如果提供类似于write_condition机制的其实都是提供的乐观锁。
两种锁各有优缺点,不可认为一种好于另一种,像乐观锁适用于写比较少的情况下,即冲突真的很少发生的时候,这样可以省去了锁的开销,加大了系统的整个吞吐量。但如果经常产生冲突,上层应用会不断的进行retry,这样反倒是降低了性能,所以这种情况下用悲观锁就比较合适。
悲观锁和乐观锁
来源:这里教程网
时间:2026-03-02 10:42:27
作者:
编辑推荐:
- 悲观锁和乐观锁03-02
- alwaysOn为什么不支持分布式事务03-02
- 位图索引和B tree索引的区别03-02
- SQLServer 的动态拼接03-02
- 电脑分配自由空间给其他分区的详细操作步骤03-02
- 无线鼠标什么牌子好03-02
- NI.Circuit.Design.Suite.V14.0(Multisim和Ultiboard)电子线路设计03-02
- 查询优化器03-02
下一篇:
相关推荐
-
雷神推出 MIX PRO II 迷你主机:基于 Ultra 200H,玻璃上盖 + ARGB 灯效
2 月 9 日消息,雷神 (THUNDEROBOT) 现已宣布推出基于英
-
制造商 Musnap 推出彩色墨水屏电纸书 Ocean C:支持手写笔、第三方安卓应用
2 月 10 日消息,制造商 Musnap 现已在海外推出一款 Oce
热文推荐
- 查询某个表的索引信息
查询某个表的索引信息
26-03-02 - alwaysOn为什么不支持分布式事务
alwaysOn为什么不支持分布式事务
26-03-02 - 电脑分配自由空间给其他分区的详细操作步骤
电脑分配自由空间给其他分区的详细操作步骤
26-03-02 - 无线鼠标什么牌子好
无线鼠标什么牌子好
26-03-02 - 重置Centos 7 Root密码的超好用方法
重置Centos 7 Root密码的超好用方法
26-03-02 - 无线鼠标电池能用多久,什么无线鼠标电池好
无线鼠标电池能用多久,什么无线鼠标电池好
26-03-02 - 无线鼠标怎么用,无线鼠标使用教程
无线鼠标怎么用,无线鼠标使用教程
26-03-02 - ntfs格式分区是什么意思
ntfs格式分区是什么意思
26-03-02 - 无线网卡驱动怎么安装?
无线网卡驱动怎么安装?
26-03-02 - 电脑更换电脑主板电池的方法
电脑更换电脑主板电池的方法
26-03-02
