千寻

道路很长, 开始了就别停下!

0%

基于数据库实现分布式锁

要实现分布式锁,最简单的方式可能就是直接创建一张锁表,然后通过操作该表中的数据来实现了。

当我们要锁住某个方法或资源时,我们就在该表中增加一条记录,想要释放锁的时候就删除这条记录。

注意:

数据库表要建立唯一约束,保证只有一个请求可以成功。

缺点:

  • 吞吐能力完全依赖于数据库性能,数据库的负担比较重,不太适用线上环境。