常见分布式锁的基本实现

Posted softidea

tags:

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

 

二、分布式锁应该具备哪些条件

在分析分布式锁的三种实现方式之前,先了解一下分布式锁应该具备哪些条件:

1、在分布式系统环境下,一个方法在同一时间只能被一个机器的一个线程执行;

2、高可用的获取锁与释放锁;

3、高性能的获取锁与释放锁;

4、具备可重入特性;

5、具备锁失效机制,防止死锁;

6、具备非阻塞锁特性,即没有获取到锁将直接返回获取锁失败。

三、分布式锁的三种实现方式

目前几乎很多大型网站及应用都是分布式部署的,分布式场景中的数据一致性问题一直是一个比较重要的话题。分布式的CAP理论告诉我们“任何一个分布式系统都无法同时满足一致性(Consistency)、可用性(Availability)和分区容错性(Partition tolerance),最多只能同时满足两项。”所以,很多系统在设计之初就要对这三者做出取舍。在互联网领域的绝大多数的场景中,都需要牺牲强一致性来换取系统的高可用性,系统往往只需要保证“最终一致性”,只要这个最终时间是在用户可以接受的范围内即可。

--------------------- 本文来自 古柏树下 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/sinat_29774479/article/details/82664672?utm_source=copy 

 

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

分布式锁及其常见实现方式

锁的基本概念到 Redis 分布式锁实现

Curator实现zookeeper分布式锁的基本原理

Redis专题:锁的基本概念到Redis分布式锁实现

分布式锁的实现方式

Curator实现分布式锁的基本原理