分布式锁协议实现思考
来源:互联网 发布:11月经济数据点评 编辑:程序博客网 时间:2024/06/14 22:40
分布式锁协议实现方式思考
分布式锁协议是分布式协调协调的一部分,通常业界的zookeeper,chubby等都可以实现分布式锁协议。
1. 基于zookeeper提供的ephermal file文件来创建。
每个ephermal file是与创建文件的owner是对应的,一个文件只能被一个owner创建修改。
ephermal file是具有session的概念,当client端在server端创建了锁文件,通过client与server端维持Heartbeat来维持session。为了保持两个client同时出现抢锁的情况,client端需要确保比server端先知道session过期。
2. 基于Lease的灵活多样的分布式锁管理机制设计
2.1 这里需要将分布式锁占有权的管理公开出来,通过Lease文件形式明确当前分布式锁的占有者以及有效期,告诉其它Candidates一个明确的信息:“Don‘t Lock”。记录分布式锁所有权信息的Lease文件包含当前所有者的myId信息,当前时间戳以及Lease有效期时间。
2.2 为了减少client抢锁的时间,可以通过主动订阅该事先别的client创建的分布式锁对应的Lease文件的改动。
0 0
- 分布式锁协议实现思考
- Redis分布式锁思考
- 关于分布式锁的思考
- redis分布式锁的思考
- webservice实现创建分布式应用程序的协议
- 分布式环境下配置中心实现思考【推荐】
- 分布式的一些思考
- 分布式系统的思考
- Redis实现分布式锁
- Zk实现分布式锁
- 实现分布式对象锁
- Redis 分布式锁实现
- ZooKeeper实现分布式锁
- Zookeeper实现分布式锁
- Redis 分布式锁实现
- 分布式锁实现
- .NET 分布式锁实现
- Redis实现分布式锁
- Android 开源框架ImageLoader完全解析(一)--- 基本介绍及使用
- Linux下静态IP地址的设置及TFTP服务的搭建
- php面向对象及特征
- Git(2)
- Mac Os10.11.3 自带Apache的相关命令总结,及遇到的坑
- 分布式锁协议实现思考
- java加密——Jasypt开源工具包
- Android 之dragger使用
- MYSQL最新免密码安装
- 在腾讯云的centos云服务器上使用图形界面
- jquery解析图片地址字符串中文乱码的解决方法
- 多进程 VS 多线程
- ndroid颜色对应的xml配置值,颜色表
- **Spring4.3+MyBatis 3.3.1 项目整合**