分布式锁的优势与互斥性

分布式锁的优势:

经过多年的摸索,就如何提升正确性、保证锁的可用性以及提升锁的切换效率方面积累比较多的经验,将从以下三个层面介绍分布式锁最佳使用方式。

严格的互斥性 :

互斥性作为分布式锁最基本的要求,对用户而言就是不能出现"一锁多占",那么锁是如何避免该情况的呢?服务端每把锁都和唯一的会话绑定,客户端通过定期发送心跳来保证会话的有效性,也就保证了锁的拥有权。当心跳不能维持时,会话连同关联的锁节点都会被释放,锁节点就可以被重新抢占。

这里有一个关键的地方,就是如何保证客户端和服务端的同步,在服务端会话过期的时候,客户端也能感知,如下图五所示,我们在客户端和服务端都维护了会话的有效期的时间,客户端从心跳发送时刻( S0 )开始计时,服务端从收到请求( S1 )开始计时,这样就能保证客户端会先于服务端过期。

相关推荐
韩楚风11 小时前
【参天引擎】事务生命周期 / MVCC / Undo / ACID / 分布式事务 功能域整体解析
数据库·分布式·mysql·架构·cantian
ACP广源盛1392462567314 小时前
GSV6155@ACP# 搭配 AI 服务器、AI PC 完整适配方案
大数据·服务器·人工智能·分布式·单片机·嵌入式硬件
ZENERGY-众壹1 天前
50MW分布式VPP接入实战:调度中心要求的1分钟频率如何不卡死API
运维·服务器·分布式·光伏运维
富士康质检员张全蛋1 天前
Kafka的操作 生产消息
分布式·kafka
ClickHouseDB1 天前
推出 CostBench:一个用于数据仓库成本性能的开放基准
大数据·分布式·spark
liulilittle1 天前
麻将系统架构
服务器·网络·分布式·游戏·系统架构·通信
952362 天前
Redis - 应用
数据库·redis·分布式·缓存
衣乌安、2 天前
Redis 分布式锁与任务状态
数据库·redis·分布式
半夜修仙2 天前
RabbitMQ的推模式和拉模式
java·分布式·中间件·rabbitmq·github·java-rabbitmq
buligbulig2 天前
Hadoop环境安装和集群创建
大数据·hadoop·分布式