分布式锁 的思路发散
分布式锁. 可以理解为多客户端的抢夺同一互斥资源.
那问题可以理解为 解决互斥资源.
实现互斥资源的 三种思路
1. 调度者思路
把问题代入 现实生活中. 家里3个娃. 抢一台电视机.
此时要解决问题. 需要爸爸或者妈妈出面. 来进行协调.
爸爸 : 张一先看.张二再看. 张三最后看.
代码中,就是需要一个调度者 .维护一个先进先出的队列. 请求者将请求发送给调度者 .由调度者维护到队列中. 队列顶端的 请求者优先得到互斥资源
2. 许可思路
把问题代入 现实生活中. 3个娃 围在一起. 中间放了一个游戏机.爹妈不在家.
其中娃3号说: 两位哥哥.我先玩可以吗. 两位哥哥说:可以!
代码中,每个竞争者 在获取互斥锁之前.都要给其他竞争者发送请求.其他请求者接收到请求之后.讲此次请求保存在自己的先进先出队列中.位于顶端的请求可以返回允许,请求的发起者收到所有的许可后,方可获取互斥资源.
3. 令牌思路
标签:请求,队列,互斥,发散,思路,资源,分布式 From: https://www.cnblogs.com/libowenyyds/p/17006518.html问题代入 在丢手绢游戏中. 谁背后有个手绢,谁就可以站起来跑.手绢只有一个,大家做成圈
代码中.设定一个令牌. 讲所有竞争资源的人排成一个环. 令牌顺时针旋转. 旋转到谁,谁就可以去获取互斥资源. 如果没有需求.就跳过下一个.