[发明专利]分布式锁实现方法、系统、设备及存储介质在审
| 申请号: | 201811468636.3 | 申请日: | 2018-12-03 |
| 公开(公告)号: | CN111258976A | 公开(公告)日: | 2020-06-09 |
| 发明(设计)人: | 安金龙;刘业辉;张飞;张宁;高相斌;王彦明 | 申请(专利权)人: | 北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司 |
| 主分类号: | G06F16/182 | 分类号: | G06F16/182;G06F16/176 |
| 代理公司: | 北京律智知识产权代理有限公司 11438 | 代理人: | 袁礼君;阚梓瑄 |
| 地址: | 100086 *** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 分布式 实现 方法 系统 设备 存储 介质 | ||
1.一种分布式锁实现方法,其特征在于,包括以下步骤:
创建多个锁文件,将各个所述锁文件分别存储至分布式文件系统的各个目标路径,各个所述锁文件包括锁状态信息;
接收锁申请请求,将请求者信息写入请求的目标锁对应的锁状态信息,所述锁申请请求包括所述请求者信息;
判断目标锁的所述锁状态信息与所述请求者信息是否一致;
如果一致,则确定请求者获取所述目标锁成功;
如果不一致,则确定请求者获取所述目标锁失败。
2.根据权利要求1所述的分布式锁实现方法,其特征在于,各个所述锁文件还包括锁标识信息,所述锁申请请求还包括目标锁的所述锁标识信息;
所述将请求者信息写入请求的目标锁对应的锁状态信息,包括如下步骤:
根据锁申请请求中目标锁的所述锁标识信息确定目标锁的目标路径,判断目标路径下存储的锁状态信息的值是否为初始值;
如果所述锁状态信息为初始值,则将所述请求者信息写入对应的目标锁文件中的所述锁状态信息。
3.根据权利要求2所述的分布式锁实现方法,其特征在于,所述判断目标路径下存储的锁状态信息的值是否为初始值之后,还包括如下步骤:
如果所述锁状态信息为初始值,则将所述请求者信息写入对应的锁文件中的所述锁状态信息之后,从目标路径获取所述目标锁的锁状态信息;
如果所述锁状态信息不为初始值,则直接从目标路径获取所述目标锁的锁状态信息。
4.根据权利要求1所述的分布式锁实现方法,其特征在于,所述分布式文件系统包括HDFS分布式系统,每个所述锁文件使用一个独立的HDFS目标路径。
5.根据权利要求2所述的分布式锁实现方法,其特征在于,所述锁标识信息还包括设定的失效时间阈值。
6.根据权利要求5所述的分布式锁实现方法,其特征在于,在获取目标锁成功后,还包括以下步骤:
启动一个计时器,每间隔特定时间计算当前时间与所述目标锁的获取时间的差值;
判断所得的差值是否大于设定的所述失效时间阈值;
如果是,则释放所述目标锁,并将所述锁状态信息设置为初始值。
7.根据权利要求1所述的分布式锁实现方法,其特征在于,所述确认请求者获取目标锁成功后,还包括以下步骤:
接收到锁释放请求,则释放目标锁,并将所述锁状态信息设置为初始值。
8.根据权利要求1所述的分布式锁实现方法,其特征在于,所述请求者信息包括请求者程序运行所在的IP、进程ID、线程ID和申请时间。
9.一种分布式锁实现系统,其特征在于,包括构建单元、用户单元、写入单元和判断单元,其中:
所述构建单元用于创建多个锁文件;
所述用户单元用于接收锁申请请求;
所述写入单元用于将请求者信息写入请求的目标锁对应的锁状态信息;
所述判断单元用于比较目标锁的所述锁状态信息与所述请求者信息,并根据比对结果确定请求者获取目标锁是否成功。
10.根据权利要求9所述的分布式锁实现系统,其特征在于,还包括计时单元,用于在所述判断单元确定请求者获取所述目标锁成功后,启动一个计时器,并每间隔特定时间计算当前时间与所述目标锁的获取时间的差值。
11.根据权利要求10所述的分布式锁实现系统,其特征在于:
所述判断单元还用于判断所述计时单元每间隔特定时间将当前时间与所述分布式锁的获取时间做差所得的差值是否大于设定的失效时间阈值;
所述用户单元还用于在所述判断单元判断所述差值大于设定的所述失效时间阈值时,释放所述目标锁,并将所述锁状态信息设置为初始状态。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司,未经北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811468636.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:矿井井下巷道气体检测装置
- 下一篇:电梯控制系统及电梯控制方法





