分布式锁的实现方法及装置制造方法及图纸

技术编号:23710281 阅读:38 留言:0更新日期:2020-04-08 12:10
本发明专利技术提供了一种分布式锁的实现方法及装置,涉及云计算技术领域;方法包括:响应于目标线程发送的针对分布式锁的锁获取请求,确定目标线程对应的锁获取信息;将锁获取信息分别存储至本地队列及远端队列;本地队列,用于存储归属于同一服务实例的多个线程对应的锁获取信息;远端队列,用于存储对应全局服务实例的锁获取信息,远端队列中锁获取信息的存储顺序与相应线程的分布式锁权限的获取顺序相一致;检测到目标线程对应的锁获取信息位于本地队列的队首及远端队列的队首时,确定目标线程具有分布式锁权限;通知目标线程,以使目标线程基于分布式锁权限,访问分布式锁对应的资源。

Implementation method and device of distributed lock

【技术实现步骤摘要】
分布式锁的实现方法及装置
本专利技术涉及云计算
,尤其涉及一种分布式锁的实现方法及装置。
技术介绍
云计算(CloudComputing)指IT基础设施的交付和使用模式,指通过网络以按需、易扩展的方式获得所需资源;广义云计算指服务的交付和使用模式,指通过网络以按需、易扩展的方式获得所需服务。这种服务可以是IT和软件、互联网相关,也可是其他服务。云计算是网格计算(GridComputing)、分布式计算(DistributedComputing)、并行计算(ParallelComputing)、效用计算(UtilityComputing)、网络存储(NetworkStorageTechnologies)、虚拟化(Virtualization)、负载均衡(LoadBalance)等传统计算机和网络技术发展融合的产物。随着互联网、实时数据流、连接设备多样化的发展,以及搜索服务、社会网络、移动商务和开放协作等需求的推动,云计算迅速发展起来。不同于以往的并行分布式计算,云计算的产生从理念上将推动整个互联网模式、企业管理模式发生革命性的变革。本文档来自技高网...

【技术保护点】
1.一种分布式锁的实现方法,其特征在于,所述方法包括:/n响应于目标线程发送的针对分布式锁的锁获取请求,确定所述目标线程对应的锁获取信息;/n将所述锁获取信息分别存储至本地队列及远端队列;/n其中,所述本地队列,用于存储归属于同一服务实例的多个线程对应的锁获取信息;所述远端队列,用于存储对应全局服务实例的锁获取信息,所述远端队列中锁获取信息的存储顺序与相应线程的分布式锁权限的获取顺序相一致;/n检测到所述目标线程对应的所述锁获取信息位于所述本地队列的队首及所述远端队列的队首时,确定所述目标线程具有所述分布式锁权限;/n通知所述目标线程,以使所述目标线程基于所述分布式锁权限,访问所述分布式锁对应...

【技术特征摘要】
1.一种分布式锁的实现方法,其特征在于,所述方法包括:
响应于目标线程发送的针对分布式锁的锁获取请求,确定所述目标线程对应的锁获取信息;
将所述锁获取信息分别存储至本地队列及远端队列;
其中,所述本地队列,用于存储归属于同一服务实例的多个线程对应的锁获取信息;所述远端队列,用于存储对应全局服务实例的锁获取信息,所述远端队列中锁获取信息的存储顺序与相应线程的分布式锁权限的获取顺序相一致;
检测到所述目标线程对应的所述锁获取信息位于所述本地队列的队首及所述远端队列的队首时,确定所述目标线程具有所述分布式锁权限;
通知所述目标线程,以使所述目标线程基于所述分布式锁权限,访问所述分布式锁对应的资源。


2.如权利要求1所述的方法,其特征在于,所述确定所述目标线程对应的锁获取信息,包括:
基于所述锁获取请求,生成对应所述目标线程的线程标识;
相应的,所述将所述锁获取信息分别存储至本地队列及远端队列,包括:
将所述线程标识存储至对应所述分布式锁的本地队列的队尾,
并将所述线程标识存储至对应所述分布式锁的远端队列的队尾。


3.如权利要求2所述的方法,其特征在于,所述基于所述锁获取请求,生成对应所述目标线程的线程标识,包括:
解析所述锁获取请求,得到对应所述锁获取请求的机器网际协议地址IP、进程号及线程号;
基于所述机器IP、进程号及线程号,生成对应所述目标线程的线程标识。


4.如权利要求2所述的方法,其特征在于,所述将所述线程标识存储至对应所述分布式锁的本地队列的队尾,包括:
检测到对应所述分布式锁的本地队列不存在时,创建对应所述分布式锁的本地队列;
将对应所述目标线程的线程标识存储至创建的对应所述分布式锁的本地队列的队尾。


5.如权利要求1所述的方法,其特征在于,所述方法还包括:
确定所述本地队列在预设时长内处于空闲状态时,删除所述本地队列。


6.如权利要求1所述的方法,其特征在于,所述检测到所述目标线程对应的所述锁获取信息位于所述本地队列的队首及所述远端队列的队首时,确定所述目标线程具有所述分布式...

【专利技术属性】
技术研发人员:郭娟王润泽
申请(专利权)人:腾讯云计算北京有限责任公司
类型:发明
国别省市:北京;11

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

1