[发明专利]分布式锁的处理方法及装置、电子设备、存储介质在审
申请号: | 202110301625.1 | 申请日: | 2021-03-22 |
公开(公告)号: | CN113010326A | 公开(公告)日: | 2021-06-22 |
发明(设计)人: | 郑钦锋 | 申请(专利权)人: | 平安科技(深圳)有限公司 |
主分类号: | G06F9/52 | 分类号: | G06F9/52;G06F16/27 |
代理公司: | 北京中强智尚知识产权代理有限公司 11448 | 代理人: | 黄耀威 |
地址: | 518000 广东省深圳市福田街*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分布式 处理 方法 装置 电子设备 存储 介质 | ||
1.一种分布式锁的处理方法,其特征在于,包括:
通过对象存储的应用程序接口设置上传对象函数中的键值对,其中,所述键值对包括键名和键值,所述键名设置为分布式锁的锁名,所述键值设置为含有目标应用服务器的唯一主机名,所述锁名由当多个应用服务器并发访问共享数据时待操作目标业务的业务名决定,所述目标应用服务器为所述多个应用服务器中任一应用服务器;
根据所述锁名和所述目标应用服务器的唯一主机名,判断所述目标应用服务器是否成功抢占锁资源;
若所述目标应用服务器成功抢占锁资源,则操作所述目标业务。
2.根据权利要求1所述的方法,其特征在于,在根据所述锁名和所述目标应用服务器的唯一主机名,判断所述目标应用服务器是否成功抢占锁资源之前,所述方法还包括:
通过所述应用程序接口调用所述上传对象函数;
通过所述应用程序接口调用所述对象存储中的获取对象函数,以获取所述键值对。
3.根据权利要求1所述的方法,其特征在于,所述共享数据存储于区块链中,根据所述锁名和所述目标应用服务器的唯一主机名,判断所述目标应用服务器是否成功抢占锁资源,包括:
判断所述锁名对应的业务名是否位于所述对象存储中;
若所述业务名位于所述对象存储中,则判断所述键值中是否含有所述目标应用服务器的唯一主机名;
若所述键值中含有所述目标应用服务器的唯一主机名,则所述目标应用服务器抢占锁资源成功。
4.根据权利要求3所述的方法,其特征在于,在所述判断所述锁名对应的业务名是否位于所述对象存储中之后还包括:
若所述键名没有位于所述对象存储中,则确定没有应用服务器抢占锁资源,通过所述应用程序接口重新设置所述上传对象函数中的键值对;并执行所述判断所述锁名对应的业务名是否位于所述对象存储中的步骤。
5.根据权利要求3所述的方法,其特征在于,在所述判断所述键值中是否含有所述目标应用服务器的唯一主机名之后还包括:
步骤a,若所述键值中没有所述目标应用服务器的唯一主机名,则所述目标应用服务器抢占锁资源失败;
步骤b,更新所述上传对象函数中的键值为第一应用服务器的唯一主机名,其中,所述第一应用服务器为所述多个应用服务器中除所述目标应用服务器之外的任一应用服务器;
步骤c,执行所述通过所述应用程序接口调用所述对象存储中的获取对象函数的步骤,以获取所述获取对象函数中的更新键值;
步骤d,判断所述更新键值中是否含有所述第一应用服务器的唯一主机名;
步骤e,若所述更新键值中含有所述第一应用服务器的主机名,则所述第一应用服务器抢占锁资源成功;否则,返回执行步骤b,步骤c,步骤d。
6.根据权利要求1所述的方法,其特征在于,在操作所述目标业务之后,所述方法还包括:
删除所述对象存储中的锁名,以释放锁资源。
7.根据权利要求1所述的方法,其特征在于,若所述键值中还包含所述键值设置为含有所述目标应用服务器的唯一主机名的初始时间,在操作所述目标业务成功之前,所述方法还包括:
更新所述初始时间为当前时间;
基于所述初始时间和所述当前时间监测所述目标应用服务器访问共享数据的时间戳;
将所述时间戳与预设时间进行比较;
若所述时间戳大于或等于所述预设时间,则删除所述对象存储中的锁名,以释放锁资源。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于平安科技(深圳)有限公司,未经平安科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110301625.1/1.html,转载请声明来源钻瓜专利网。