首页 > 编程知识 正文

分布式锁实现方案,分布式锁使用

时间:2023-05-04 23:29:56 阅读:237653 作者:1671

微服务中分布式锁解决方案

方案一:

基于 Redis 的分布式锁

1.其中使用了redis的 SETNX 和 SETEX;转载,redis介绍setnx、setex...

原理:通过SETNX设置k-v来获取锁,进入死循环,每次循环判断,如果存在key则继续循环,若不存在key了,则跳出循环执行方法体,执行完成后删除key来释放锁。

弊端:高并发情况,若多个线程同时进入循环,可能会导致加锁失败;SETNX是一个很耗时的操作。

2.使用RedLock来实现分布式锁(Redis推荐)

基于数据库的分布式锁

基于数据库表进行锁,添加数据或者更新数据获取锁。

 基于 Zookeeper 的分布式锁

 

 

 

kubernetes-api-conventions

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。