分布式锁的实现面试题

1.使用场景

  需要保证一个方法在同一时间内只能被同一个线程执行

2.实现方式:加锁和解锁

3.方案,考虑因素(性能,稳定,实现难度,死锁)

  基于数据库做分布式锁--乐观锁(基于版本号)和悲观锁(基于排它锁)

  基于 redis 做分布式锁:setnx(key,当前时间+过期时间)和Redlock机制

  基于 zookeeper 做分布式锁:临时有序节点来实现的分布式锁,Curator

  基于 Consul 做分布式锁

 

  

转载于:https://www.cnblogs.com/yuanpeng-java/p/10656150.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值