分布式锁服务的方法和装置制造方法及图纸

技术编号:14849182 阅读:50 留言:0更新日期:2017-03-18 09:07
本发明专利技术实施例提供一种分布式锁服务方法和装置。该方法包括,接收数据操作请求;确定与该数据操作请求对应的目标互联网协议IP盘;从该目标IP盘中的锁管理服务端DLMS获取与该数据操作请求对应的目标分布式锁;从该目标IP盘中获取目标数据,以便于在该目标分布式锁的租约期限内对该目标数据进行处理。本发明专利技术实施例能减少物理部署,降低分布式系统的复杂度。

【技术实现步骤摘要】

本专利技术实施例涉及分布式系统领域,并且更具体地,涉及一种分布式锁服务的方法和装置
技术介绍
在分布式系统中,不同的主机可以共享一个或者一组资源,为了防止不同的主机同时访问相同的共享资源时发生冲突或者干扰,分布式系统中常常采用分布式锁来实现对不同的主机访问共享资源的控制。具体来说,当一个主机要访问共享资源时需要先获得与要访问的资源对应的分布式锁,在获取相应的分布式锁之后才能访问相应的资源。分布式锁服务主要是通过分布式锁管理服务端(DistributeLockManageServer,DLMS)和分布式锁管理客户端(DistributeLockManageClient,DLMC)来实现分布式锁服务的,DLMS拥有一定数量的分布式锁,应用可以通过DLMC向DLMS申请分布式锁,一般来说DLMC可以与应用分布在相同的分布式节点上,而DLMS一般分布在单独的分布式节点上。为了提供分布式锁服务,现有技术将DLMS设置在分布式系统中的不同分布式节点上,应用在接收到数据操作请求之后通过所在节点的DLMC向DLMS申请相应的分布式锁,在获取了分布式锁之后,再从系统存储数据的节点获取与数据操作请求对应的待处理的数据,然后对待处理的数据进行相应的操作处理。上述现有技术是在单独的分布式节点上部署DLMS,物理部署较多。此外,应用在对目标数据进行处理时,需要先确定与目标数据对应的分布式锁所在的节点,并从该节点的DLMS获取分布式锁,接下来再确定目标数据所在的节点,并从中获取目标数据,最后再对目标数据进行处理。也就是说,如果要完成对数据的处理,需要分别确定分布式锁和目标数据所在的节点,然后再分别获取分布式锁和目标数据,过程比较繁琐。
技术实现思路
本申请提供了一种分布式锁服务的方法和装置,以减少物理部署。第一方面,提供一种分布式锁服务的方法,包括:接收数据操作请求;确定与所述数据操作请求对应的目标互联网协议IP盘;从所述目标IP盘中的锁管理服务端DLMS获取与所述数据操作请求对应的目标分布式锁;从所述目标IP盘中获取目标数据,以便于在所述目标分布式锁的租约期限内对所述目标数据进行处理。现有技术是将DLMS在部署在分布式系统中的一些单独的分布式节点上,如果要实现对数据的操作处理必须要先确定与目标数据对应的分布式锁所在的节点,并从该节点的DLMS获取分布式锁,接下来再确定目标数据所在的节点,并从中获取目标数据,最后再对目标数据进行处理。也就是说,如果要完成对数据的处理,需要分别确定分布式锁和目标数据所在的节点,然后再分别获取分布式锁和目标数据,过程比较繁琐。而在本申请的方案中,通过将DLMS直接部署在IP盘中,而不用再设置单独的分布式节点来部署DLMS,减少了物理部署,降低了系统的复杂度,使得应用可以从IP盘中既能获取分布式锁又能获取要处理的数据,而不用像现有技术那样要分别从不同的分布式节点获取分布式锁和数据,简化了服务的流程。结合第一方面,在第一方面的第一种实现方式中,所述数据操作请求携带所述目标数据的目标键值,所述确定与所述数据操作请求对应的目标IP盘,包括:根据所述目标键值查询第一映射关系表,确定与所述目标键值对应的目标IP盘,其中,所述第一映射关系表指示了IP盘与键值的映射关系;所述从所述目标IP盘中的锁管理服务端DLMS获取与所述数据操作请求对应的目标分布式锁,包括:根据所述目标键值查询所述DLMS中的第二映射关系表,确定与所述目标键值对应的目标分布式锁,其中,所述第二映射关系表指示了分布式锁与键值的映射关系。结合第一方面或者第一方面的第一种实现方式,在第一方面的第二种实现方式中,从所述DLMS获取所述目标分布式锁之后,将所述目标分布式锁保存在本地缓存中。结合第一方面以及第一方面的第一种至第二种实现方式中的任一种,在第一方面的第三种实现方式中,在确定与所述数据操作请求对应的目标IP盘之前,所述方法还包括:从本地缓存中获取所述目标分布式锁。第二方面,提供一种分布式锁服务的方法,包括:锁管理服务端DLMS接收应用APP的锁服务请求,所述DLMS位于互联网协议IP盘中;所述DLMS确定与所述锁服务请求对应的目标分布式锁;所述DLMS将所述目标分布式锁分配给所述APP,以便于所述APP从所述目标IP盘获取目标数据后对所述目标数据进行处理。现有技术是将DLMS在部署在分布式系统中的一些单独的分布式节点上,如果要实现对数据的操作处理必须要先确定与目标数据对应的分布式锁所在的节点,并从该节点的DLMS获取分布式锁,接下来再确定目标数据所在的节点,并从中获取目标数据,最后再对目标数据进行处理。也就是说,如果要完成对数据的处理,需要分别确定分布式锁和目标数据所在的节点,然后再分别获取分布式锁和目标数据,过程比较繁琐。而在本申请的方案中,通过将DLMS直接部署在IP盘中,而不用再设置单独的分布式节点来部署DLMS,减少了物理部署,降低了系统的复杂度,使得应用可以从IP盘中既能获取分布式锁又能获取要处理的数据,而不用像现有技术那样要分别从不同的分布式节点获取分布式锁和数据,简化了服务的流程。结合第二方面,在第二方面的第一种实现方式中,所述锁服务请求携带所述目标数据的目标键值,所述DLMS确定与所述锁服务请求对应的目标分布式锁,包括:所述DLMS根据所述目标键值查询第一映射关系表,确定与所述目标键值对应的目标分布式锁,其中,所述第一映射关系表指示了分布式锁与键值的映射关系。结合第二方面或者第二方面的第一种实现方式,在第二方面的第二种实现方式中,所述DLMS将所述目标分布式锁分配给所述APP之前,所述方法还包括:如果所述DLMS中的所述目标分布式锁被其它应用获取,所述DLMS向所述其它应用召回所述目标分布式锁。结合第二方面以及第二方面的第一种至第二种实现方式中的任一种,在第二方面的第三种实现方式中,所述DLMS向所述其它应用召回所述目标分布式锁,包括:所述DLMS确定所述目标分布式锁在所述其它应用中是否处于锁定状态;如果所述DLMS确定所述目标分布式锁在所述其它应用中处于锁定状态,所述DLMS在所述目标分布式锁的租约期满之后向所述其它应用召回所述目标分布式锁;如果所述DLMS确定所述目标分布式锁在所述其它应用中处于空闲状态,所述DLMS向所述其它应用召回所述目标分布式锁,并向所述其它应用发送指示信息,以便于所述其它应用将保存的所述目标分布本文档来自技高网
...

【技术保护点】
一种分布式锁服务的方法,其特征在于,包括:接收数据操作请求;确定与所述数据操作请求对应的目标互联网协议IP盘;从所述目标IP盘中的锁管理服务端DLMS获取与所述数据操作请求对应的目标分布式锁;从所述目标IP盘中获取目标数据,以便于在所述目标分布式锁的租约期限内对所述目标数据进行处理。

【技术特征摘要】
1.一种分布式锁服务的方法,其特征在于,包括:
接收数据操作请求;
确定与所述数据操作请求对应的目标互联网协议IP盘;
从所述目标IP盘中的锁管理服务端DLMS获取与所述数据操作请求对
应的目标分布式锁;
从所述目标IP盘中获取目标数据,以便于在所述目标分布式锁的租约
期限内对所述目标数据进行处理。
2.如权利要求1所述的方法,所述数据操作请求携带所述目标数据的
目标键值,所述确定与所述数据操作请求对应的目标IP盘,包括:
根据所述目标键值查询第一映射关系表,确定与所述目标键值对应的目
标IP盘,其中,所述第一映射关系表指示了IP盘与键值的映射关系;
所述从所述目标IP盘中的锁管理服务端DLMS获取与所述数据操作请
求对应的目标分布式锁,包括:
根据所述目标键值查询所述DLMS中的第二映射关系表,确定与所述目
标键值对应的目标分布式锁,其中,所述第二映射关系表指示了分布式锁与
键值的映射关系。
3.如权利要求1或2所述的方法,其特征在于,从所述DLMS获取所
述目标分布式锁之后,将所述目标分布式锁保存在本地缓存中。
4.如权利要求1-3中任一项所述的方法,在确定与所述数据操作请求
对应的目标IP盘之前,所述方法还包括:
从本地缓存中获取所述目标分布式锁。
5.一种分布式锁服务的方法,其特征在于,包括:
锁管理服务端DLMS接收应用APP的锁服务请求,所述DLMS位于互
联网协议IP盘中;
所述DLMS确定与所述锁服务请求对应的目标分布式锁;
所述DLMS将所述目标分布式锁分配给所述APP,以便于所述APP从
所述目标IP盘获取目标数据后对所述目标数据进行处理。
6.如权利要求5所述的方法,所述锁服务请求携带所述目标数据的目
标键值,所述DLMS确定与所述锁服务请求对应的目标分布式锁,包括:
所述DLMS根据所述目标键值查询第一映射关系表,确定与所述目标键
值对应的目标分布式锁,其中,所述第一映射关系表指示了分布式锁与键值
的映射关系。
7.如权利要求5或6所述的方法,其特征在于,所述DLMS将所述目
标分布式锁分配给所述APP之前,所述方法还包括:
如果所述DLMS中的所述目标分布式锁被其它应用获取,所述DLMS
向所述其它应用召回所述目标分布式锁。
8.如权利要求7所述的方法,其特征在于,所述DLMS向所述其它应
用召回所述目标分布式锁,包括:
所述DLMS确定所述目标分布式锁在所述其它应用中是否处于锁定状
态;
如果所述DLMS确定所述目标分布式锁在所述其它应用中处于锁定状
态,所述DLMS在所述目标分布式锁的租约期满之后向所述其它应用召回所
述目标分布式锁;
如果所述DLMS确定所述目标分布式锁在所述其它应用中处于空闲状
态,所述DLMS向所述其它应用召回所述...

【专利技术属性】
技术研发人员:钟延辉邓荣峰
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1