首页 > 其他分享 >分布式锁 的思路发散

分布式锁 的思路发散

时间:2022-12-26 19:12:26浏览次数:33  
标签:请求 队列 互斥 发散 思路 资源 分布式

分布式锁 的思路发散

分布式锁. 可以理解为多客户端的抢夺同一互斥资源.
那问题可以理解为 解决互斥资源.

实现互斥资源的 三种思路

1. 调度者思路

把问题代入 现实生活中. 家里3个娃. 抢一台电视机.
此时要解决问题. 需要爸爸或者妈妈出面. 来进行协调.
爸爸 : 张一先看.张二再看. 张三最后看.
代码中,就是需要一个调度者 .维护一个先进先出的队列. 请求者将请求发送给调度者 .由调度者维护到队列中. 队列顶端的 请求者优先得到互斥资源

2. 许可思路

把问题代入 现实生活中. 3个娃 围在一起. 中间放了一个游戏机.爹妈不在家.
其中娃3号说: 两位哥哥.我先玩可以吗. 两位哥哥说:可以!
代码中,每个竞争者 在获取互斥锁之前.都要给其他竞争者发送请求.其他请求者接收到请求之后.讲此次请求保存在自己的先进先出队列中.位于顶端的请求可以返回允许,请求的发起者收到所有的许可后,方可获取互斥资源.

3. 令牌思路

问题代入 在丢手绢游戏中. 谁背后有个手绢,谁就可以站起来跑.手绢只有一个,大家做成圈
代码中.设定一个令牌. 讲所有竞争资源的人排成一个环. 令牌顺时针旋转. 旋转到谁,谁就可以去获取互斥资源. 如果没有需求.就跳过下一个.

标签:请求,队列,互斥,发散,思路,资源,分布式
From: https://www.cnblogs.com/libowenyyds/p/17006518.html

相关文章

  • 反人脸识别的思路和实现
    反人脸识别的思路和实现 一、基本知识和背景    ​人脸识别是非常经典的机器识别运用,目前已经在许多地方得到了使用。相关的算法原理和实现发展的都很发达,Opencv中就......
  • 分布式系统中的常用技术
    1、布隆过滤器Bloom过滤器是一种节省空间的概率数据结构,用于测试元素是否为某集合的成员。它用于我们只需要检查元素是否属于对象的场景。 在BigTable(和Cassandra)中,任......
  • 适用场景全新升级!扩展 Dragonfly2 作为分布式缓存系统架构 | 龙蜥技术
    文/龙蜥社区开发者 Dragonfly2简介Dragonfly作为​​龙蜥社区的镜像加速标准解决方案​​,是一款基于P2P的智能镜像和文件分发工具。它旨在提高大规模......
  • 分布式事务
    单机本地事务满足ACID(atomicity,consistency,isolation,durability)常见实现方式:程序锁,数据库锁,mysqlMVCC,undo/redolog等。分布式事务事务协商通信协议发展历程:CAP定理,BAS......
  • .NET 云原生架构师训练营(基于 OP Storming 和 Actor 的大型分布式架构二)--学习笔记
    目录为什么我们用OrleansDaprVSOrleansActor模型Orleans的核心概念结合OPStorming的实践结合OPStorming的实践业务模型设计模型代码实现业务模型......
  • Saga - 微服务中的分布式事务
    问题当我们在开发单体应用时,其实我们对事务(即transaction)的印象并不会很深刻,一方面是大多数工程师所开发的后端应用对一致性的要求并不是很高,很多时候只是封装一层CRUD......
  • 分布式事务方案 - SAGA模式
    本文目的是讲清楚SAGA这种分布式事务解决方案的实现思路,不包括具体实现代码,具体实现推荐使用阿里的Seata框架。内容包括:分布式事务问题描述SAGA-Choreography策......
  • 企业个人信息保护合规思路与实践报告
    处理行为要求一.收集(一)收集的合法基础1.告知、同意企业应当向用户告知收集、使用的目的、方式和范围等规则,同时征得明示同意(征得同意前不得收集个人信息 或通过Cooki......
  • Zookeeper分布式一致性算法--2PC、3PC及其应用
    2PC、3PC的基本概念2PC,3PC主要是基于分布式事务的分布式一致性算法(因为分布式事务也可能会导致数据的不一致问题,这跟副本的不一致性从大类上看是都归于数据的不一致)。在分......
  • 【源思路】高联代数百题
    引言做这一份专题,我想说的是:每个在答案里看似高深莫测的构造,实际上都是有思路可源的。在这里我叙述的思路有很多是失败的,但联想到会极自然,希望对读者有助。高联代数百题......