分布式锁

Posted 幽灵漫步

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了分布式锁相关的知识,希望对你有一定的参考价值。

1.数据库中乐观锁与悲观锁的例子

悲观锁:一般都需要依赖数据库的锁实现。使用select...for update,锁住行,查询出数据后进行更新

针对mysql Innodb引擎,会使用行锁或者表锁

乐观锁:使用版本号列实现

select version from table where id= 1;//假设读取的version=1

update table set num = 10,version= version+1 where id= 1 and version =1;//如果有多个事务同时提交,只有一个成功

以上是关于分布式锁的主要内容,如果未能解决你的问题,请参考以下文章

Redis实现分布式锁与Zookeeper实现分布式锁区别

分布式锁,及Redis实现分布式锁

分布式锁

高并发架构系列:什么是分布式锁?Redis实现分布式锁详解

Redisson分布式锁设计方案

Redis | 黑马点评 + 思维导图分布式锁