CN106354565A - 一种分布式锁客户端及控制方法 - Google Patents

一种分布式锁客户端及控制方法 Download PDF

Info

Publication number
CN106354565A
CN106354565A CN201610836235.3A CN201610836235A CN106354565A CN 106354565 A CN106354565 A CN 106354565A CN 201610836235 A CN201610836235 A CN 201610836235A CN 106354565 A CN106354565 A CN 106354565A
Authority
CN
China
Prior art keywords
lock
locking key
drop
distributed
distributed lock
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201610836235.3A
Other languages
English (en)
Other versions
CN106354565B (zh
Inventor
傅磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nubia Technology Co Ltd
Original Assignee
Nubia Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nubia Technology Co Ltd filed Critical Nubia Technology Co Ltd
Priority to CN201610836235.3A priority Critical patent/CN106354565B/zh
Publication of CN106354565A publication Critical patent/CN106354565A/zh
Application granted granted Critical
Publication of CN106354565B publication Critical patent/CN106354565B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供的分布式锁客户端包括:生成模块,生成第一竞争资源对应的分布式锁的第一锁键,第一锁键用于唯一标识第一竞争资源对应的分布式锁;映射模块,生成映射数据表,映射数据表包括多个锁键、多个锁键对应的锁值;获取模块,从映射数据表中获取第一锁键对应的第一锁值、从Redis缓存集群中获取第一锁键对应的第二锁值,判断第一锁值与第二锁值是否相等;当第一锁值与第二锁值相等时,设置模块设置第二锁值的失效时间,将设置了失效时间的第二锁值存入映射数据表,将其返回给业务服务器。本发明还提供一种控制方法。本发明提供分布式锁客户端及控制方法,极大提高了分布式锁的处理性能,增强了互联网业务的服务端分布式架构的吞吐能力。

Description

一种分布式锁客户端及控制方法
技术领域
本发明涉及通信领域,更具体地说,涉及一种分布式锁客户端及控制方法。
背景技术
随着移动通信以及移动互联网的快速发展,大量的用户使用移动互联网进行互联网业务的访问处理,这样,对移动互联网业务的服务端就产生了海量的并发处理的负载压力。为了满足高并发的性能要求,互联网业务的服务端的架构采用的是分布式集群,同时,服务端具有横向扩展的能力。而在分布式的服务端架构中,如何保证在多台服务器之间的资源竞争的加锁处理成为了首要面临的问题。当前大部分的解决方案是基于传统关系型数据库实现的,传统关系型数据库的数据是通过磁盘IO的访问存储,该实现有着性能瓶颈,不利于海量并发访问,同时,传统关系型数据库不易于横向扩展,使得不能随着用户量而线性递增。
发明内容
本发明提供了一种分布式锁客户端,能有效处理海量的并发访问,提高分布式锁的处理性能,增强互联网业务的服务端分布式架构的吞吐能力。所述分布式锁客户端应用于业务服务器,所述业务服务器通过所述分布式锁客户端请求获取分布式锁,所述分布式锁客户端包括:
生成模块,用于生成第一竞争资源对应的分布式锁的第一锁键,其中,所述第一锁键用于唯一标识所述第一竞争资源对应的所述分布式锁;
映射模块,用于生成映射数据表,其中,所述映射数据表包括多个锁键、所述多个锁键对应的锁值;
获取模块,用于从所述映射数据表中获取所述第一锁键对应的第一锁值、从Redis缓存集群中获取所述第一锁键对应的第二锁值,判断所述第一锁值与所述第二锁值是否相等;
设置模块,用于当所述第一锁值与所述第二锁值相等时,设置所述第二锁值的失效时间,将设置了失效时间的所述第二锁值存入所述映射数据表,将设置了失效时间的所述第二锁值返回给所述业务服务器,即获取分布式锁成功。
进一步地,若获取的所述第一锁键的锁值为空或者所述第一锁链在Redis缓存集群中不存在,所述获取模块,还用于生成所述第一锁键的锁值,计算公式为:所述第一锁键的锁值=当前请求分布式锁的业务服务器IP+当前时间戳+5位随机字符+1位随机数字。
进一步地,所述获取模块,还用于将所述第一锁键存入所述Redis缓存集群,将生成的所述第一锁键的锁值存入所述Redis缓存集群,将生成的所述第一锁键的锁值存入所述映射数据表中,并将所述数据映射数据表中存入的第一锁键的锁值返回给所述业务服务器,即获取分布式锁成功。
进一步地,所述业务服务器通过所述分布式锁客户端请求释放分布式锁,所述生成模块,还用于生成第二竞争资源对应的分布式锁的第二锁键,其中,所述第二锁键用于唯一标识所述第二竞争资源对应的所述分布式锁;
所述获取模块,还用于从所述映射数据表中获取所述第二锁键对应的锁值,若获取的所述第二锁键对应的锁值为空,删除所述Redis缓存集群中所述第二锁键的数据,即释放分布式锁成功。
进一步地,所述获取模块,还用于从所述映射数据表中获取所述第二锁键对应的第三锁值、从所述Redis缓存集群中获取所述第二锁链对应的第四锁值,判断所述第三锁值、第四锁值是否相等,若相等,则删除所述Redis缓存集群中的所述第二锁键的数据,即释放分布式锁成功。
本发明还提供一种控制方法,所述控制方法应用于分布式锁客户端,所述分布式锁客户端应用于业务服务器,所述业务服务器通过所述分布式锁客户端请求获取分布式锁,所述控制方法包括:
所述分布式锁客户端生成第一竞争资源对应的分布式锁的第一锁键,其中,所述第一锁键用于唯一标识所述第一竞争资源对应的所述分布式锁;
所述分布式锁客户端生成映射数据表,其中,所述映射数据表包括多个锁键、所述多个锁键对应的锁值;
所述分布式锁客户端从所述映射数据表中获取所述第一锁键对应的第一锁值、从Redis缓存集群中获取所述第一锁键对应的第二锁值,判断所述第一锁值与所述第二锁值是否相等;
当所述第一锁值与所述第二锁值相等时,所述分布式锁客户端设置所述第二锁值的失效时间,将设置了失效时间的所述第二锁值存入所述映射数据表,将设置了失效时间的所述第二锁值返回给所述业务服务器,即获取分布式锁成功。
进一步地,所述控制方法还包括:
当获取的所述第一锁键的锁值为空或者所述第一锁键在Redis缓存集群中不存在时,所述分布式锁客户端生成所述第一锁键的锁值,计算公式为:所述第一锁键的锁值=当前请求分布式锁的业务服务器IP+当前时间戳+5位随机字符+1位随机数字。
进一步地,所述控制方法还包括:
所述分布式锁客户端将所述第一锁键存入所述Redis缓存集群,并将生成的所述第一锁键的锁值存入所述Redis缓存集群;
所述分布式锁客户端将生成的所述第一锁键的锁值存入所述映射数据表中,并将所述数据映射数据表中存入的第一锁键的锁值返回给所述业务服务器,即获取分布式锁成功。
进一步地,所述业务服务器通过所述分布式锁客户端请求释放分布式锁,所述控制方法还包括:
所述分布式锁客户端生成第二竞争资源对应的分布式锁的第二锁链,其中,所述第二锁键用于唯一标识所述第二竞争资源对应的所述分布式锁;
所述分布式锁客户端从所述映射数据表中获取所述第二锁链对应的锁值,当获取的所述第二锁键对应的锁值为空时,删除所述Redis缓存集群中所述第二锁键的数据,即释放分布式锁成功。
进一步地,所述控制方法还包括:
所述分布式锁客户端从所述映射数据表中获取所述第二锁键对应的第三锁值、从所述Redis缓存集群中获取所述第二锁键对应的第四锁值,判断所述第三锁值、第四锁值是否相等,若相等,则删除所述Redis缓存集群中的所述第二锁键的数据,即释放分布式锁成功。
本发明提供的分布式锁客户端及控制方法基于Redis实现对分布式锁的处理,Redis为单进程单线程模式,采用队列模式将并发访问变成串行访问,且多个分布式锁客户端对Redis的连接并不存在竞争关系,Redis为集群部署,解决了传统关系型数据库的单点故障问题,以及传统关系型数据库不易于横向扩展的问题,同时,将Redis作为缓存,解决了传统关系型数据的磁盘IO访问中的问题,极大提高了分布式锁的处理性能,增强了互联网业务的服务端分布式架构的吞吐能力。
附图说明
图1是本发明实施例一分布式锁客户端的应用环境图;
图2是本发明实施例二分布式锁客户端的功能模块图;
图3是本发明实施例三控制方法的流程图;
图4是本发明实施例四控制方法的流程图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
现在将参考附图描述实现本发明各个实施例的分布式锁客户端。在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身并没有特定的意义。因此,″模块″与″部件″可以混合地使用。
请参阅图1,图1是本发明实施例一分布式锁客户端的应用环境图。图1的应用环境图中包括第一业务服务器1、第二业务服务器2、Redis缓存集群3。第一业务服务器1、第二业务服务器2分别包括分布式锁客户端10,Redis缓存集群3包括分布式锁第一锁键4、分布式锁第二锁键5。
参阅图2,图2是本发明实施例二分布式锁客户端的功能模块图。图2所示的分布式锁客户端10包括生成模块101、映射模块103、获取模块105、设置模块107。下面结合图1对本实施例的分布式锁客户端10的各功能模块进行详细介绍。
分布式锁客户端10应用于第一业务服务器1、第二业务服务器2,第一业务服务器1、第二业务服务器2通过分布式锁客户端10请求获取分布式锁,若第一业务服务器1通过分布式锁客户端10请求获取分布式锁,分布式锁客户端10的生成模块101生成某一竞争资源对应的分布式锁的锁键,具体地,生成模块101生成第一竞争资源对应的分布式锁的第一锁键,其中,第一锁键用于唯一标识第一竞争资源对应的分布式锁。映射模块103生成映射数据表,其中,映射数据表包括多个锁键、多个锁键对应的锁值。获取模块105从映射数据表中获取第一锁键对应的锁值,假设为第一锁值、从Redis缓存集群3中获取第一锁键4对应的的锁值,假设为第二锁值,判断第一锁值与第二锁值是否相等。
当第一锁值与第二锁值相等时,设置模块107设置第二锁值的失效时间,将设置了失效时间的第二锁值存入映射数据表,将设置了失效时间的第二锁值返回给第一业务服务器1,即第一业务服务器1获取分布式锁成功。
需要补充说明的是,若获取的第一锁键的锁值为空或者第一锁键在Redis缓存集群中不存在,获取模块105生成第一锁键的锁值,计算公式为:第一锁键的锁值=当前请求分布式锁的业务服务器IP+当前时间戳+5位随机字符+1位随机数字。在生成了第一锁键的锁值后,获取模块105将第一锁键存入Redis缓存集群3,并将生成的第一锁键的锁值存入Redis缓存集群3。获取模块105还将生成的第一锁键的锁值存入映射数据表中,并将数据映射数据表中存入的第一锁键的锁值返回给第一业务服务器1,即第一业务服务器1获取分布式锁成功。
各个业务服务器成功获取分布式锁后,进行相应的业务处理,各个业务处理完毕后,通过分布式锁客户端请求释放某一个分布式锁,分布式锁客户端10的生成模块101生成某一竞争资源对应的分布式锁的锁键,例如,分布式锁客户端10的生成模块101生成第二竞争资源对应的分布式锁的第二锁键,其中,第二锁键用于唯一标识第二竞争资源对应的分布式锁。获取模块105从映射数据表中获取第二锁键对应的锁值,若获取的第二锁键对应的锁值为空,则删除Redis缓存集群3中第二锁键5的数据,即释放分布式锁成功。
若获取的第二锁键对应的锁值不为空时,获取模块105从映射数据表中获取第二锁键对应的锁值,假设为第三锁值、从Redis缓存集群中获取第二锁键对应的锁值,假设为第四锁值,判断第三锁值、第四锁值是否相等,若相等,则删除Redis缓存集群3中的第二锁键5的数据,即释放分布式锁成功。
本发明还提供一种控制方法,该方法应用于图2所示的分布式锁客户端10,分布式锁客户端10包括生成模块101、映射模块103、获取模块105、设置模块107,下面对本实施例的控制方法进行详细介绍。
参阅图3,图3是本发明实施例三控制方法的流程图。
在步骤S10中,第一业务服务器1通过分布式锁客户端10请求获取分布式锁,分布式锁客户端10的生成模块101生成第一竞争资源对应的分布式锁的第一锁键,其中,第一锁键用于唯一标识第一竞争资源对应的分布式锁。
在步骤S20中,分布式锁客户端10的映射模块103在分布式锁客户端10中生成映射数据表,其中,映射数据表包括多个锁键、多个锁键对应的锁值,获取模块105从映射数据表中获取第一锁键对应的第一锁值、从Redis缓存集群3中获取第一锁键4对应的第二锁值,判断第一锁值与第二锁值是否相等。
在步骤S30中,当第一锁值与第二锁值相等时,分布式锁客户端10的设置模块107设置第二锁值的失效时间,将设置了失效时间的第二锁值存入映射数据表,将设置了失效时间的第二锁值返回给第一业务服务器1,即第一业务服务器1获取分布式锁成功。
参阅图4,图4是本发明实施例四控制方法的流程图。该方法应用图2所示的分布式锁客户端10,分布式锁客户端10包括生成模块101、映射模块103、获取模块105、设置模块107,下面对本实施例的控制方法进行详细介绍。
各个业务服务器成功获取分布式锁后,进行相应的业务处理,各个业务处理完毕后,通过分布式锁客户端请求释放某一个分布式锁。
在步骤S201中,分布式锁客户端10的生成模块101生成第二竞争资源对应的分布式锁的第二锁键,其中,第二锁键用于唯一标识第二竞争资源对应的分布式锁。
在步骤S202中,获取模块105从映射数据表中获取第二锁键对应的锁值。
在步骤S203中,获取模块105判断第二锁键对应的锁值是否为空。
在步骤S207中,当获取的第二锁键对应的锁值为空时,获取模块105删除Redis缓存集群3中第二锁键5的数据,即释放分布式锁成功。
当获取的第二锁键对应的锁值不为空时,在步骤S204中,获取模块105从映射数据表中获取第二锁键对应的锁值,假设该锁值为第三锁值。
在步骤S205中,从Redis缓存集群中获取第二锁键对应的锁值,假设该锁值为第四锁值。判断从映射数据表中获取第二锁键对应的锁值、从Redis缓存集群中获取第二锁键对应的锁值是否相等,即判断第三锁值、第四锁键是否相等。
若相等,在步骤S207中,获取模块105删除Redis缓存集群3中第二锁键5的数据,即释放分布式锁成功。
若不相等,在步骤S206中,释放分布式锁失败。
本发明提供的分布式锁客户端及控制方法基于Redis实现对分布式锁的处理,Redis为单进程单线程模式,采用队列模式将并发访问变成串行访问,且多个分布式锁客户端对Redis的连接并不存在竞争关系,Redis为集群部署,解决了传统关系型数据库的单点故障问题,以及传统关系型数据库不易于横向扩展的问题,同时,将Redis作为缓存,解决了传统关系型数据的磁盘IO访问中的问题,极大提高了分布式锁的处理性能,增强了互联网业务的服务端分布式架构的吞吐能力。
以上仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种分布式锁客户端,所述分布式锁客户端应用于业务服务器,所述业务服务器通过所述分布式锁客户端请求获取分布式锁,其特征在于,所述分布式锁客户端包括:
生成模块,用于生成第一竞争资源对应的分布式锁的第一锁键,其中,所述第一锁键用于唯一标识所述第一竞争资源对应的所述分布式锁;
映射模块,用于生成映射数据表,其中,所述映射数据表包括多个锁键、所述多个锁键对应的锁值;
获取模块,用于从所述映射数据表中获取所述第一锁键对应的第一锁值、从Redis缓存集群中获取所述第一锁键对应的第二锁值,判断所述第一锁值与所述第二锁值是否相等;
设置模块,用于当所述第一锁值与所述第二锁值相等时,设置所述第二锁值的失效时间,将设置了失效时间的所述第二锁值存入所述映射数据表,将设置了失效时间的所述第二锁值返回给所述业务服务器,即获取分布式锁成功。
2.如权利要求1所述的分布式锁客户端,其特征在于,所述获取模块,还用于当获取的所述第一锁键的锁值为空或者所述第一锁键在Redis缓存集群中不存在时,生成所述第一锁键的锁值,计算公式为:所述第一锁键的锁值=当前请求分布式锁的业务服务器IP+当前时间戳+5位随机字符+1位随机数字。
3.如权利要求2所述的分布式锁客户端,其特征在于,所述获取模块,还用于将所述第一锁键存入所述Redis缓存集群,将生成的所述第一锁键的锁值存入所述Redis缓存集群,将生成的所述第一锁键的锁值存入所述映射数据表中,并将所述数据映射数据表中存入的第一锁键的锁值返回给所述业务服务器,即获取分布式锁成功。
4.如权利要求1至3所述的任一一项分布式锁客户端,所述业务服务器通过所述分布式锁客户端请求释放分布式锁,其特征在于,所述生成模块,还用于生成第二竞争资源对应的分布式锁的第二锁键,其中,所述第二锁键用于唯一标识所述第二竞争资源对应的所述分布式锁;
所述获取模块,还用于从所述映射数据表中获取所述第二锁键对应的锁值,若获取的所述第二锁键对应的锁值为空,则删除所述Redis缓存集群中所述第二锁键的数据,即释放分布式锁成功。
5.如权利要求4所述的分布式锁客户端,其特征在于,所述获取模块,还用于从所述映射数据表中获取所述第二锁键对应的第三锁值、从所述Redis缓存集群中获取所述第二锁键对应的第四锁值,判断所述第三锁值、第四锁值是否相等,若相等,则删除所述Redis缓存集群中的所述第二锁键的数据,即释放分布式锁成功。
6.一种控制方法,所述控制方法应用于分布式锁客户端,所述分布式锁客户端应用于业务服务器,所述业务服务器通过所述分布式锁客户端请求获取分布式锁,其特征在于,所述控制方法包括:
所述分布式锁客户端生成第一竞争资源对应的分布式锁的第一锁键,其中,所述第一锁键用于唯一标识所述第一竞争资源对应的所述分布式锁;
所述分布式锁客户端生成映射数据表,其中,所述映射数据表包括多个锁键、所述多个锁键对应的锁值;
所述分布式锁客户端从所述映射数据表中获取所述第一锁键对应的第一锁值、从Redis缓存集群中获取所述第一锁键对应的第二锁值,判断所述第一锁值与所述第二锁值是否相等;
当所述第一锁值与所述第二锁值相等时,所述分布式锁客户端设置所述第二锁值的失效时间,将设置了失效时间的所述第二锁值存入所述映射数据表,将设置了失效时间的所述第二锁值返回给所述业务服务器,即获取分布式锁成功。
7.如权利要求6所述的控制方法,其特征在于,还包括:
当获取的所述第一锁键的锁值为空或者所述第一锁键在Redis缓存集群中不存在时,所述分布式锁客户端生成所述第一锁键的锁值,计算公式为:所述第一锁键的锁值=当前请求分布式锁的业务服务器IP+当前时间戳+5位随机字符+1位随机数字。
8.如权利要求7所述的控制方法,其特征在于,还包括:
所述分布式锁客户端将所述第一锁键存入所述Redis缓存集群,并将生成的所述第一锁键的锁值存入所述Redis缓存集群;
所述分布式锁客户端将生成的所述第一锁键的锁值存入所述映射数据表中,并将所述数据映射数据表中存入的第一锁键的锁值返回给所述业务服务器,即获取分布式锁成功。
9.如权利要求6至8所述的任一一项控制方法,所述业务服务器通过所述分布式锁客户端请求释放分布式锁,其特征在于,所述控制方法还包括:
所述分布式锁客户端生成第二竞争资源对应的分布式锁的第二锁键,其中,所述第二锁键用于唯一标识所述第二竞争资源对应的所述分布式锁;
所述分布式锁客户端从所述映射数据表中获取所述第二锁链对应的锁值,当获取的所述第二锁键对应的锁值为空时,删除所述Redis缓存集群中所述第二锁键的数据,即释放分布式锁成功。
10.如权利要求9所述的控制方法,其特征在于,还包括:
所述分布式锁客户端从所述映射数据表中获取所述第二锁键对应的第三锁值、从所述Redis缓存集群中获取所述第二锁键对应的第四锁值,判断所述第三锁值、第四锁值是否相等,若相等,则删除所述Redis缓存集群中的所述第二锁键的数据,即释放分布式锁成功。
CN201610836235.3A 2016-09-21 2016-09-21 一种分布式锁客户端及控制方法 Active CN106354565B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610836235.3A CN106354565B (zh) 2016-09-21 2016-09-21 一种分布式锁客户端及控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610836235.3A CN106354565B (zh) 2016-09-21 2016-09-21 一种分布式锁客户端及控制方法

Publications (2)

Publication Number Publication Date
CN106354565A true CN106354565A (zh) 2017-01-25
CN106354565B CN106354565B (zh) 2019-08-20

Family

ID=57858727

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610836235.3A Active CN106354565B (zh) 2016-09-21 2016-09-21 一种分布式锁客户端及控制方法

Country Status (1)

Country Link
CN (1) CN106354565B (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107133108A (zh) * 2017-04-27 2017-09-05 努比亚技术有限公司 分布式复杂锁的实现方法、终端、服务器及计算机可读存储介质
CN107402822A (zh) * 2017-07-06 2017-11-28 腾讯科技(深圳)有限公司 死锁处理方法及装置
CN108833495A (zh) * 2018-05-24 2018-11-16 努比亚技术有限公司 用户请求的数据缓存方法、设备及计算机可读存储介质
CN109101341A (zh) * 2017-06-21 2018-12-28 阿里巴巴集团控股有限公司 分布式锁的分配方法及设备
WO2019134402A1 (zh) * 2018-01-05 2019-07-11 北京金山云网络技术有限公司 设备操作方法、集群系统、电子设备及可读存储介质
CN110287206A (zh) * 2019-07-01 2019-09-27 四川新网银行股份有限公司 构建用于Redis数据库的分布式锁的方法
CN111782669A (zh) * 2020-06-28 2020-10-16 百度在线网络技术(北京)有限公司 一种分布式锁的实现方法、装置及电子设备
CN112256443A (zh) * 2020-10-14 2021-01-22 杭州当虹科技股份有限公司 一种基于redis的动态集群锁系统
CN113806384A (zh) * 2021-08-19 2021-12-17 紫光云(南京)数字技术有限公司 基于redis的分配递增整型数据的方法
CN114363883A (zh) * 2022-01-19 2022-04-15 东方通信股份有限公司 一种漫游号功能分布式部署系统
CN114679464A (zh) * 2022-03-24 2022-06-28 未鲲(上海)科技服务有限公司 基于分布式锁的数据回滚方法、装置、设备和存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103518364A (zh) * 2013-03-19 2014-01-15 华为技术有限公司 分布式存储系统的数据更新方法及服务器
CN103731485A (zh) * 2013-12-26 2014-04-16 华为技术有限公司 一种网络设备、集群存储系统及分布式锁管理方法
CN103814362A (zh) * 2011-09-30 2014-05-21 国际商业机器公司 事务处理系统、方法和程序
US20150019353A1 (en) * 2012-02-06 2015-01-15 Adstruc, Inc. System for managing the utilization of a plurality of outdoor advertising units
CN104486328A (zh) * 2014-12-10 2015-04-01 小米科技有限责任公司 访问控制方法和装置
CN104850431A (zh) * 2015-04-29 2015-08-19 努比亚技术有限公司 基于fota升级的稳定处理方法和装置
CN104954411A (zh) * 2014-03-31 2015-09-30 腾讯科技(深圳)有限公司 分布式系统共享网络资源的方法、终端及系统
CN105208124A (zh) * 2015-09-29 2015-12-30 华为技术有限公司 管理锁的方法及装置、确定锁管理服务器的方法及装置
CN105631023A (zh) * 2015-12-30 2016-06-01 华为技术有限公司 分布式锁服务的方法和装置

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103814362A (zh) * 2011-09-30 2014-05-21 国际商业机器公司 事务处理系统、方法和程序
US20150019353A1 (en) * 2012-02-06 2015-01-15 Adstruc, Inc. System for managing the utilization of a plurality of outdoor advertising units
CN103518364A (zh) * 2013-03-19 2014-01-15 华为技术有限公司 分布式存储系统的数据更新方法及服务器
CN103731485A (zh) * 2013-12-26 2014-04-16 华为技术有限公司 一种网络设备、集群存储系统及分布式锁管理方法
CN104954411A (zh) * 2014-03-31 2015-09-30 腾讯科技(深圳)有限公司 分布式系统共享网络资源的方法、终端及系统
CN104486328A (zh) * 2014-12-10 2015-04-01 小米科技有限责任公司 访问控制方法和装置
CN104850431A (zh) * 2015-04-29 2015-08-19 努比亚技术有限公司 基于fota升级的稳定处理方法和装置
CN105208124A (zh) * 2015-09-29 2015-12-30 华为技术有限公司 管理锁的方法及装置、确定锁管理服务器的方法及装置
CN105631023A (zh) * 2015-12-30 2016-06-01 华为技术有限公司 分布式锁服务的方法和装置

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107133108A (zh) * 2017-04-27 2017-09-05 努比亚技术有限公司 分布式复杂锁的实现方法、终端、服务器及计算机可读存储介质
CN109101341A (zh) * 2017-06-21 2018-12-28 阿里巴巴集团控股有限公司 分布式锁的分配方法及设备
CN109101341B (zh) * 2017-06-21 2022-02-22 阿里巴巴集团控股有限公司 分布式锁的分配方法及设备
US11288253B2 (en) 2017-06-21 2022-03-29 Alibaba Group Holding Limited Allocation method and device for a distributed lock
CN107402822A (zh) * 2017-07-06 2017-11-28 腾讯科技(深圳)有限公司 死锁处理方法及装置
US11416313B2 (en) 2018-01-05 2022-08-16 Beijing Kingsoft Cloud Network Technology Co., Ltd. Equipment control method, cluster system , electronic device and readable storage medium
WO2019134402A1 (zh) * 2018-01-05 2019-07-11 北京金山云网络技术有限公司 设备操作方法、集群系统、电子设备及可读存储介质
CN110008031A (zh) * 2018-01-05 2019-07-12 北京金山云网络技术有限公司 设备操作方法、集群系统、电子设备及可读取存储介质
CN108833495A (zh) * 2018-05-24 2018-11-16 努比亚技术有限公司 用户请求的数据缓存方法、设备及计算机可读存储介质
CN110287206A (zh) * 2019-07-01 2019-09-27 四川新网银行股份有限公司 构建用于Redis数据库的分布式锁的方法
CN111782669A (zh) * 2020-06-28 2020-10-16 百度在线网络技术(北京)有限公司 一种分布式锁的实现方法、装置及电子设备
CN111782669B (zh) * 2020-06-28 2023-12-12 百度在线网络技术(北京)有限公司 一种分布式锁的实现方法、装置及电子设备
CN112256443A (zh) * 2020-10-14 2021-01-22 杭州当虹科技股份有限公司 一种基于redis的动态集群锁系统
CN112256443B (zh) * 2020-10-14 2024-02-06 杭州当虹科技股份有限公司 一种基于redis的动态集群锁系统
CN113806384A (zh) * 2021-08-19 2021-12-17 紫光云(南京)数字技术有限公司 基于redis的分配递增整型数据的方法
CN114363883A (zh) * 2022-01-19 2022-04-15 东方通信股份有限公司 一种漫游号功能分布式部署系统
CN114363883B (zh) * 2022-01-19 2023-07-25 东方通信股份有限公司 一种漫游号功能分布式部署系统
CN114679464A (zh) * 2022-03-24 2022-06-28 未鲲(上海)科技服务有限公司 基于分布式锁的数据回滚方法、装置、设备和存储介质
CN114679464B (zh) * 2022-03-24 2024-02-13 深圳九有数据库有限公司 基于分布式锁的数据回滚方法、装置、设备和存储介质

Also Published As

Publication number Publication date
CN106354565B (zh) 2019-08-20

Similar Documents

Publication Publication Date Title
CN106354565A (zh) 一种分布式锁客户端及控制方法
CN109800222B (zh) 一种HBase二级索引自适应优化方法和系统
TWI662426B (zh) 分布式流式資料處理的方法和裝置
CN102663007B (zh) 一种支持敏捷开发和横向扩展的数据存储与查询方法
CN101969468B (zh) 查询服务器集群系统及查询方法
CN104794190B (zh) 一种大数据有效存储的方法和装置
CN104050276A (zh) 一种分布式数据库的缓存处理方法及系统
CN103246659A (zh) 键值数据查询的方法和装置
US9026557B2 (en) Schema mapping based on data views and database tables
CN101577705A (zh) 一种多核并行的网络业务流负载均衡方法及其系统
CN106331155A (zh) 一种防止用户重复登录的方法和服务器
CN100386986C (zh) 数据网格系统中数据副本的混合定位方法
CN109120445B (zh) 一种网络日志数据同步系统及方法
Ulusu et al. Asymptotically lacunary I2-invariant equivalence
CN112732756A (zh) 数据查询方法、装置、设备及存储介质
CN109246102B (zh) 一种支撑大规模认证数据快速存储及检索的系统及方法
US9703788B1 (en) Distributed metadata in a high performance computing environment
CN103577604B (zh) 一种用于Hadoop分布式环境的图像索引结构
CN104714923A (zh) 一种实现设备共享的方法和装置
CN107590199B (zh) 一种面向内存的多线程数据库设计方法
Costa et al. Towards an adaptive and distributed architecture for managing workflow provenance data
Swaroop et al. NoSQL paradigm and performance evaluation
US10313438B1 (en) Partitioned key-value store with one-sided communications for secondary global key lookup by range-knowledgeable clients
Aqel et al. A Comparative Study of NoSQL Databases
Feng et al. Research on parallel association rules mining algorithm based on hadoop

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant