CN114661742A - 基于Zookeeper的分布式锁的获取方法及系统 - Google Patents
基于Zookeeper的分布式锁的获取方法及系统 Download PDFInfo
- Publication number
- CN114661742A CN114661742A CN202210311636.2A CN202210311636A CN114661742A CN 114661742 A CN114661742 A CN 114661742A CN 202210311636 A CN202210311636 A CN 202210311636A CN 114661742 A CN114661742 A CN 114661742A
- Authority
- CN
- China
- Prior art keywords
- zookeeper
- distributed
- distributed lock
- client
- temporary sequence
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 34
- 238000012163 sequencing technique Methods 0.000 claims abstract description 7
- 230000002123 temporal effect Effects 0.000 claims description 12
- 239000011800 void material Substances 0.000 description 6
- 230000006870 function Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000013499 data model Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
- G06F9/526—Mutual exclusion algorithms
Abstract
本发明公开了基于Zookeeper的分布式锁的获取方法及系统,属于分布式系统技术领域,要解决的技术问题为如何基于Zookeeper确保分布式系统中数据一致性。包括如下步骤:对于分布式系统中的多个客户端,每个客户端均与Zookeeper连接;对于每个客户端,在指定的根目录下创建对应的临时序列节点;对所述创建的临时序列节点进行排序,排在首位临时序列节点视为获得了分布式锁,能够访问对应的资源;获得分布式锁的客户端主动删除临时序列节点,或者获得分布式锁的客户端与Zookeeper的连接断开,释放分布式锁,并回调通知排序在下一位的临时序列节点。
Description
技术领域
本发明涉及分布式系统技术领域,具体地说是基于Zookeeper的分布式锁的获取方法及系统。
背景技术
在分布式系统中保证数据一致性的问题。不同主机之间共享了一个或一组资源,那么访问这些资源的时候,为了保证数据的一致性,需要使用到分布式锁。
ZooKeeper是分布式应用程序的分布式开源协调服务。它公开了一组简单的原语,分布式应用程序可以在这些原语的基础上实现更高级别的同步、配置维护、组和命名服务。它被设计为易于编程,并使用一种数据模型,该模型以熟悉的文件系统目录树结构为风格。
ZooKeeper允许分布式进程通过共享的分层命名空间相互协调,该命名空间的组织方式类似于标准文件系统。命名空间由数据寄存器组成——在ZooKeeper用语中称为znodes——它们类似于文件和目录。与为存储而设计的典型文件系统不同,ZooKeeper数据保存在内存中,这意味着ZooKeeper可以实现高吞吐量和低延迟数字。
基于上述,如何基于Zookeeper确保分布式系统中数据一致性,是需要解决的技术问题。
发明内容
本发明的技术任务是针对以上不足,提供基于Zookeeper的分布式锁的获取方法及系统,来解决如何基于Zookeeper确保分布式系统中数据一致性的技术问题。
第一方面,本发明的基于Zookeeper的分布式锁的获取方法,应用于分布式系统中,所述方法包括如下步骤:
对于分布式系统中的多个客户端,每个客户端均与Zookeeper连接;
对于每个客户端,在指定的根目录下创建对应的临时序列节点;
对所述创建的临时序列节点进行排序,排在首位临时序列节点视为获得了分布式锁,能够访问对应的资源;
获得分布式锁的客户端主动删除临时序列节点,或者获得分布式锁的客户端与Zookeeper的连接断开,释放分布式锁,并回调通知排序在下一位的临时序列节点。
作为优选,对于每个客户端,在同一个父目录下创建相同前缀的临时序列节点。
作为优选,以临时序列节点的名称排序。
第二方面,本发明的基于Zookeeper的分布式锁的获取系统,通过如第一方面任一项所述基于Zookeeper的分布式锁的获取方法,实现分布式系统之间数据的一致性,所述系统包括:
客户端,所述客户端共多个且为分布式系统中的客户端;
Zookeeper,每个客户端均与所述Zookeeper连接,对于每个客户端,所述Zookeeper用于在指定的根目录下创建对应的临时序列节点;用于对所述创建的临时序列节点进行排序,排在首位临时序列节点视为获得了分布式锁,能够访问对应的资源;
获得分布式锁的客户端主动删除临时序列节点、或者获得分布式锁的客户端与Zookeeper的连接断开后,所述获得分布式锁的客户端用于释放分布式锁,并回调通知排序在下一位的临时序列节点。
作为优选,对于每个客户端,所述Zookeeper用于在同一个父目录下创建相同前缀的临时序列节点。
作为优选,所述Zookeeper用于以临时序列节点的名称排序。
第三方面,本发明的装置,包括:至少一个存储器和至少一个处理器;
所述至少一个存储器,用于存储机器可读程序;
所述至少一个处理器,用于调用所述机器可读程序,执行第一方面任一所述的方法。
第四方面,本发明的计算机可读介质,所述计算机可读介质上存储有计算机指令,所述计算机指令在被处理器执行时,使所述处理器执行第一方面任一所述的方法。
本发明的基于Zookeeper的分布式锁的获取方法及系统具有以下优点:
1、分布式系统中利用Zookeeper获取分布式锁,协调分布式系统中的资源当多个客户端同时访问同一个系统资源时,保证了数据的一致性,确保了在同一个时间内只能让其中的一个客户端访问;
2、Zookeeper顺序一致性,集群只有一个Leader,多个Follower,只有Leader节点可以写,因此可以保证写的顺序一致性;
3、高可用,当Leader节点挂掉,集群就由可用状态进入不可用状态,选出新Leader的时间不到200毫秒;
4、提高了系统的响应速度。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
下面结合附图对本发明进一步说明。
图1为实施例1基于Zookeeper的分布式锁的获取方法的流程框图;
图2为实施例2基于Zookeeper的分布式锁的获取系统的结构框图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步说明,以使本领域的技术人员可以更好地理解本发明并能予以实施,但所举实施例不作为对本发明的限定,在不冲突的情况下,本发明实施例以及实施例中的技术特征可以相互结合。
本发明实施例提供基于Zookeeper的分布式锁的获取方法及系统,用于解决如何基于Zookeeper确保分布式系统中数据一致性的技术问题。
实施例1:
本发明基于Zookeeper的分布式锁的获取方法,应用于分布式系统中,该方法包括如下步骤:
S100、对于分布式系统中的多个客户端,每个客户端均与Zookeeper连接;
S200、对于每个客户端,在指定的根目录下创建对应的临时序列节点;
S300、对创建的临时序列节点进行排序,排在首位临时序列节点视为获得了分布式锁,能够访问对应的资源;
S400、获得分布式锁的客户端主动删除临时序列节点,或者获得分布式锁的客户端与Zookeeper的连接断开,释放分布式锁,并回调通知排序在下一位的临时序列节点。
在一个具体的实施中,对于每个客户端,在同一个父目录下创建相同前缀的临时序列节点,以临时序列节点的名称排序。
本实施例中,分布式系统中多个客户端连接Zookeeper,在同一个父目录下创建相同前缀的临时序列节点,以生成的临时序列节点的名称排序,排在最前面的就视为拿到了分布式锁,可以进一步去访问对应的资源。
临时节点特点是随着连接的断开会自动删除,避免了已经获得锁的客户端宕机而导致的死锁问题;而序列节点是Zookeeper自身维护的顺序编号,可以保证顺序的正确。Zookeeper支持Reactive(响应式)编程,事件在回调中处理,可以避免客户端以轮询的方式去获取锁,每个客户端根据临时序列节点的名称排序,只查看自己前面那个节点的状态就可以。代码示例如下:
//创建连接
ZooKeeper zk=new ZooKeeper(connectString,sessionTimeout,watcher);
CountDownLatch cc=new CountDownLatch(1);
String pathName;
//获取锁
public void tryLock(){
//创建以/lock为前缀的临时序列节点,创建完成后会进入StringCallback的回调方法
zk.create("/lock","lock".getBytes(),ZooDefs.Ids.OPEN_ACL_UNSAFE,
CreateMode.EPHEMERAL_SEQUENTIAL,StringCallback,"abc");
//在获取到锁之前,阻塞进程
cc.await();
}
//StringCallback的回调方法
public void processResult(int rc,String path,Object ctx,String name){
if(name!=null){
pathName=name;//记录当前创建的临时序列节点的名称
//获取当前父目录下的所有子节点,之后会进入Children2Callback的回调方法
zk.getChildren("/",false,Children2Callback,"sdf");
}
}
//Children2Callback的回调方法
public void processResult(int rc,String path,Object ctx,List<String>children,Stat stat){
Collections.sort(children);//对子节点名称排序
int i=children.indexOf(pathName.substring(1));//获取当前客户端对应节点名称的位置
if(i==0){//如果是第一个,就表示获取到了锁,
cc.countDown();//已经获取锁,取消阻塞
}else{
//如果不是第一个,就去watch前一个节点,
//如果前一个节点已经删除了,就到StatCallback回调方法中处理;
//如果正常watch到了,就等前一个节点删除的时候去Watcher的回调方法中处理
zk.exists("/"+children.get(i-1),Watcher,StatCallback,"sdf");
}
}
//StatCallback回调方法
public void processResult(int rc,String path,Object ctx,Stat stat){
if(stat==null){//重新获取父节点下的所有子节点
zk.getChildren("/",false,Children2Callback,"sdf");
}
}
//Watcher的回调方法
public void process(WatchedEvent event){
//如果第一个节点,那个锁释放了,其实只有第二个节点收到了回调事件!!
//如果不是第一个节点,是其中某一个,挂了,也能造成他后边的一个节点收到这个通知,
//从而让他后边那个节点去watch挂掉这个节点前边的节点
switch(event.getType()){
case None:
break;
case NodeCreated:
break;
case NodeDeleted://只watch前一个节点的删除事件
zk.getChildren("/",false,this,"sdf");
break;
case NodeDataChanged:
break;
case NodeChildrenChanged:
break;
}
}
//业务处理完,删除节点,释放锁
public void unLock(){
zk.delete(pathName,-1);
}
当多个客户端同时访问同一个系统资源时,为了保证数据的一致性,需要保证在同一个时间内只能让其中的一个客户端访问,这时就需要用到分布式锁。本实施例在分布式系统中利用Zookeeper获取分布式锁,协调分布式系统中的资源,当多个客户端同时访问同一个系统资源时,从而确保了数据的一致性。
实施例2:
本发明基于Zookeeper的分布式锁的获取系统,包括客户端和Zookeeper,客户端共多个且为分布式系统中的客户端,每个客户端均与所述Zookeeper连接,对于每个客户端,Zookeeper用于在指定的根目录下创建对应的临时序列节点;用于对创建的临时序列节点进行排序,排在首位临时序列节点视为获得了分布式锁,能够访问对应的资源;获得分布式锁的客户端主动删除临时序列节点、或者获得分布式锁的客户端与Zookeeper的连接断开后,获得分布式锁的客户端用于释放分布式锁,并回调通知排序在下一位的临时序列节点。
作为一个具体实施,对于每个客户端,Zookeeper用于在同一个父目录下创建相同前缀的临时序列节点,并用于以临时序列节点的名称排序。
本实施例的系统可执行实施1公开的方法,通过该方法在分布式系统中利用Zookeeper获取分布式锁,协调分布式系统中的资源,当多个客户端同时访问同一个系统资源时,从而确保了数据的一致性。
实施例2:
本发明的装置,包括:至少一个存储器和至少一个处理器;
所述至少一个存储器,用于存储机器可读程序;所述至少一个处理器,用于调用所述机器可读程序,执行实施例1公开的方法。
实施例4:
本发明的一种计算机可读介质,所述计算机可读介质上存储有计算机指令,所述计算机指令在被处理器执行时,使所述处理器执行实施例1公开的方法。具体地,可以提供配有存储介质的系统或者装置,在该存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机(或CPU或MPU)读出并执行存储在存储介质中的程序代码。
在这种情况下,从存储介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此程序代码和存储程序代码的存储介质构成了本发明的一部分。
用于提供程序代码的存储介质实施例包括软盘、硬盘、磁光盘、光盘(如CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-RAM、DVD-RW、DVD+RW)、磁带、非易失性存储卡和ROM。可选择地,可以由通信网络从服务器计算机上下载程序代码。
此外,应该清楚的是,不仅可以通过执行计算机所读出的程序代码,而且可以通过基于程序代码的指令使计算机上操作的操作系统等来完成部分或者全部的实际操作,从而实现上述实施例中任意一项实施例的功能。
此外,可以理解的是,将由存储介质读出的程序代码写到插入计算机内的扩展板中所设置的存储器中或者写到与计算机相连接的扩展单元中设置的存储器中,随后基于程序代码的指令使安装在扩展板或者扩展单元上的CPU等来执行部分和全部实际操作,从而实现上述实施例中任一实施例的功能。
需要说明的是,上述各流程和各系统结构图中不是所有的步骤和模块都是必须的,可以根据实际的需要忽略某些步骤或模块。各步骤的执行顺序不是固定的,可以根据需要进行调整。上述各实施例中描述的系统结构可以是物理结构,也可以是逻辑结构,即,有些模块可能由同一物理实体实现,或者,有些模块可能分由多个物理实体实现,或者,可以由多个独立设备中的某些部件共同实现。
上文通过附图和优选实施例对本发明进行了详细展示和说明,然而本发明不限于这些已揭示的实施例,基与上述多个实施例本领域技术人员可以知晓,可以组合上述不同实施例中的手段得到本发明更多的实施例,这些实施例也在本发明的保护范围之内。
Claims (8)
1.基于Zookeeper的分布式锁的获取方法,其特征在于应用于分布式系统中,所述方法包括如下步骤:
对于分布式系统中的多个客户端,每个客户端均与Zookeeper连接;
对于每个客户端,在指定的根目录下创建对应的临时序列节点;
对所述创建的临时序列节点进行排序,排在首位临时序列节点视为获得了分布式锁,能够访问对应的资源;
获得分布式锁的客户端主动删除临时序列节点,或者获得分布式锁的客户端与Zookeeper的连接断开,释放分布式锁,并回调通知排序在下一位的临时序列节点。
2.根据权利要求1所述的基于Zookeeper的分布式锁的获取方法,其特征在于对于每个客户端,在同一个父目录下创建相同前缀的临时序列节点。
3.根据权利要求2所述的基于Zookeeper的分布式锁的获取方法,其特征在于以临时序列节点的名称排序。
4.基于Zookeeper的分布式锁的获取系统,其特征在于通过如权利要求1-3任一项所述基于Zookeeper的分布式锁的获取方法,实现分布式系统之间数据的一致性,所述系统包括:
客户端,所述客户端共多个且为分布式系统中的客户端;
Zookeeper,每个客户端均与所述Zookeeper连接,对于每个客户端,所述Zookeeper用于在指定的根目录下创建对应的临时序列节点;用于对所述创建的临时序列节点进行排序,排在首位临时序列节点视为获得了分布式锁,能够访问对应的资源;
获得分布式锁的客户端主动删除临时序列节点、或者获得分布式锁的客户端与Zookeeper的连接断开后,所述获得分布式锁的客户端用于释放分布式锁,并回调通知排序在下一位的临时序列节点。
5.根据权利要求4所述的基于Zookeeper的分布式锁的获取系统,其特征在于对于每个客户端,所述Zookeeper用于在同一个父目录下创建相同前缀的临时序列节点。
6.根据权利要求5所述的基于Zookeeper的分布式锁的获取系统,其特征在于所述Zookeeper用于以临时序列节点的名称排序。
7.装置,其特征在于,包括:至少一个存储器和至少一个处理器;
所述至少一个存储器,用于存储机器可读程序;
所述至少一个处理器,用于调用所述机器可读程序,执行权利要求1至3中任一所述的方法。
8.计算机可读介质,其特征在于,所述计算机可读介质上存储有计算机指令,所述计算机指令在被处理器执行时,使所述处理器执行权利要求1至3任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210311636.2A CN114661742A (zh) | 2022-03-28 | 2022-03-28 | 基于Zookeeper的分布式锁的获取方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210311636.2A CN114661742A (zh) | 2022-03-28 | 2022-03-28 | 基于Zookeeper的分布式锁的获取方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114661742A true CN114661742A (zh) | 2022-06-24 |
Family
ID=82034271
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210311636.2A Pending CN114661742A (zh) | 2022-03-28 | 2022-03-28 | 基于Zookeeper的分布式锁的获取方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114661742A (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103744724A (zh) * | 2014-02-19 | 2014-04-23 | 互联网域名系统北京市工程研究中心有限公司 | 定时任务集群方法及其装置 |
CN106712981A (zh) * | 2015-07-23 | 2017-05-24 | 阿里巴巴集团控股有限公司 | 一种节点变更通知方法及装置 |
CN108038005A (zh) * | 2017-12-28 | 2018-05-15 | 广东蜂助手网络技术股份有限公司 | 基于zookeeper的共享资源访问方法、客户端、服务端、系统 |
US20180373750A1 (en) * | 2017-06-21 | 2018-12-27 | Alibaba Group Holding Limited | Allocation method and device for a distributed lock |
CN109144748A (zh) * | 2018-07-26 | 2019-01-04 | 阿里巴巴集团控股有限公司 | 一种服务器、分布式服务器集群及其状态驱动方法 |
CN110474963A (zh) * | 2019-07-17 | 2019-11-19 | 中国平安人寿保险股份有限公司 | 一种基于zookeeper的资源访问方法、系统、介质及电子设备 |
CN112486695A (zh) * | 2020-12-07 | 2021-03-12 | 浪潮云信息技术股份公司 | 一种高并发业务下的分布式锁实现方法 |
CN112667409A (zh) * | 2020-11-25 | 2021-04-16 | 紫光云技术有限公司 | 一种可重入的分布式排它锁实现方法 |
US11436562B1 (en) * | 2021-03-19 | 2022-09-06 | Coupang Corp. | Method for processing data of distributed coordination system and electronic apparatus therefor |
-
2022
- 2022-03-28 CN CN202210311636.2A patent/CN114661742A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103744724A (zh) * | 2014-02-19 | 2014-04-23 | 互联网域名系统北京市工程研究中心有限公司 | 定时任务集群方法及其装置 |
CN106712981A (zh) * | 2015-07-23 | 2017-05-24 | 阿里巴巴集团控股有限公司 | 一种节点变更通知方法及装置 |
US20180373750A1 (en) * | 2017-06-21 | 2018-12-27 | Alibaba Group Holding Limited | Allocation method and device for a distributed lock |
CN108038005A (zh) * | 2017-12-28 | 2018-05-15 | 广东蜂助手网络技术股份有限公司 | 基于zookeeper的共享资源访问方法、客户端、服务端、系统 |
CN109144748A (zh) * | 2018-07-26 | 2019-01-04 | 阿里巴巴集团控股有限公司 | 一种服务器、分布式服务器集群及其状态驱动方法 |
CN110474963A (zh) * | 2019-07-17 | 2019-11-19 | 中国平安人寿保险股份有限公司 | 一种基于zookeeper的资源访问方法、系统、介质及电子设备 |
CN112667409A (zh) * | 2020-11-25 | 2021-04-16 | 紫光云技术有限公司 | 一种可重入的分布式排它锁实现方法 |
CN112486695A (zh) * | 2020-12-07 | 2021-03-12 | 浪潮云信息技术股份公司 | 一种高并发业务下的分布式锁实现方法 |
US11436562B1 (en) * | 2021-03-19 | 2022-09-06 | Coupang Corp. | Method for processing data of distributed coordination system and electronic apparatus therefor |
Non-Patent Citations (2)
Title |
---|
LIPIKA BOSE GOEL 等: "Handling Mutual Exclusion in a Distributed Application through Zookeeper", 《2015 INTERNATIONAL CONFERENCE ON ADVANCES IN COMPUTER ENGINEERING AND APPLICATIONS》 * |
邓杰 等: "基于Zookeeper构建准实时索引更新系统及其监控", 《计算机时代》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5787262A (en) | System and method for distributed conflict resolution between data objects replicated across a computer network | |
US9785691B2 (en) | Method and apparatus for sequencing transactions globally in a distributed database cluster | |
US5802062A (en) | Preventing conflicts in distributed systems | |
US8856091B2 (en) | Method and apparatus for sequencing transactions globally in distributed database cluster | |
CN107590072B (zh) | 一种应用开发和测试的方法和装置 | |
US8065680B2 (en) | Data gateway for jobs management based on a persistent job table and a server table | |
US5463733A (en) | Failure recovery apparatus and method for distributed processing shared resource control | |
CN106648903B (zh) | 调用分布式文件系统的方法和装置 | |
CN110287206B (zh) | 构建用于Redis数据库的分布式锁的方法 | |
JP2002091938A (ja) | フェールオーバを処理するシステムおよび方法 | |
CN109241186A (zh) | 分布式事务的管理方法、系统、计算机设备及存储介质 | |
CN111258976A (zh) | 分布式锁实现方法、系统、设备及存储介质 | |
CN105630589A (zh) | 分布式流程调度系统及流程调度、执行方法 | |
CN113660350A (zh) | 分布式锁协调方法、装置、设备及存储介质 | |
JPH11506552A (ja) | pipes及びfifosを用いてマルチプロセッサ・コンピュータ・システムのファイルをアクセスする方法 | |
CN111258771A (zh) | 一种基于Raft算法的分布式锁的实现方法及系统 | |
US7788330B2 (en) | System and method for processing data associated with a transmission in a data communication system | |
CN107357800A (zh) | 一种数据库高可用零丢失解决方法 | |
CN109495528A (zh) | 分布式锁所有权调度方法和装置 | |
CN114661742A (zh) | 基于Zookeeper的分布式锁的获取方法及系统 | |
CN112667409A (zh) | 一种可重入的分布式排它锁实现方法 | |
US6799172B2 (en) | Method and system for removal of resource manager affinity during restart in a transaction processing system | |
US20050177732A1 (en) | Intersystem communications | |
WO1999034557A1 (en) | Method and system for software version management in a network management system | |
CN110262905A (zh) | 基于高性能可伸缩的优先级队列的消息中间件的推送方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20220624 |