CN104486373A - 一种锁资源迁移方法、节点及分布式系统 - Google Patents

一种锁资源迁移方法、节点及分布式系统 Download PDF

Info

Publication number
CN104486373A
CN104486373A CN201410677166.7A CN201410677166A CN104486373A CN 104486373 A CN104486373 A CN 104486373A CN 201410677166 A CN201410677166 A CN 201410677166A CN 104486373 A CN104486373 A CN 104486373A
Authority
CN
China
Prior art keywords
migration
node
source node
data
resource
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
Application number
CN201410677166.7A
Other languages
English (en)
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201410677166.7A priority Critical patent/CN104486373A/zh
Publication of CN104486373A publication Critical patent/CN104486373A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种锁资源迁移方法、节点及分布式系统,该方法包括:迁移源节点接收通知消息,所述通知消息用于通知分布式系统中有节点上线或者离线;所述迁移源节点将锁资源的全量迁移数据发送给迁移目的节点,所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到所述通知消息的时刻所述迁移源节点中的锁资源数据;所述迁移源节点在所述迁移目的节点接收所述全量迁移数据之后,设置所述锁资源的状态为停止服务状态;所述迁移源节点将增量迁移数据发送给所述迁移目的节点,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至设置所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据。

Description

一种锁资源迁移方法、节点及分布式系统
技术领域
本发明涉及电子技术领域,尤其涉及一种锁资源迁移方法、节点及分布式系统。
背景技术
分布式系统中有多个节点,当多个节点中有至少两个节点同时对同一文件分别进行写操作,或者同时对同一文件分别进行写操作和读操作,就会产生冲突。例如:A节点对一个文件进行写操作时,B节点也对相同的文件进行写操作,那么文件操作就会产生冲突。又例如:A节点对一个文件进行写操作时,B节点也对相同的文件进行读操作,文件操作也会产生冲突。还例如:A节点对一个文件的[0,100]区间进行读操作,节点B也对相同文件的[50,100]区间进行写操作,文件操作也会产生冲突。由于一个文件有多个区间,所以不同节点对同一文件的两个区间分别进行读操作和写操作,且两个区间有重叠部分时,文件操作就会产生大量的冲突。
为了避免分布式系统中的各个节点在操作文件时产生冲突,一般会在各个节点上都存储有一个文件或者多个文件的锁资源,用于记录一个或者多个文件中的每一文件被哪些节点加锁以及锁的权限是读权限还是写权限。节点在对文件进行读操作或者写操作之前,需要向存储有该文件的锁资源的节点发送加锁请求,请求对该文件进行加锁,以获取读权限或者写权限,然后再对该文件进行读操作或者写操作,以保证文件操作不会产生冲突。
现有技术中,当分布式系统中有节点上线或者下线时,为实现锁资源在分布式系统中均衡分布,需要将其他节点上的锁资源迁移到上线节点,或者需要将下线节点上的锁资源迁移到其他节点。具体的迁移方法为:首先迁移源节点将需要迁移的锁资源的状态设置为停止服务状态,然后迁移源节点将需要迁移的锁资源整体迁移到迁移目的节点上,最后迁移目的节点将已迁移过来的锁资源的状态设置为服务状态。
由于需要迁移的锁资源量大,所以在较长一段时间内,其他节点都无法使用迁移锁资源的锁服务,对分布式系统的运行效率影响较大。
因此,现有技术存在的技术问题是:迁移锁资源对分布式系统的运行效率影响较大。
发明内容
本发明实施例提供一种锁资源迁移方法、节点及分布式系统,用于解决现有技术中存在的迁移锁资源对分布式系统的运行效率影响较大的技术问题,实现了减小迁移锁资源对分布式系统的运行效率的影响的技术效果。
本发明实施例第一方面提供了一种锁资源迁移方法,所述方法包括:
迁移源节点接收通知消息,所述通知消息用于通知分布式系统中有节点上线或者离线;
所述迁移源节点将锁资源的全量迁移数据发送给迁移目的节点,所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到所述通知消息的时刻所述迁移源节点中的锁资源数据;
所述迁移源节点在所述迁移目的节点接收所述全量迁移数据之后,设置所述锁资源的状态为停止服务状态;
所述迁移源节点将增量迁移数据发送给所述迁移目的节点,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至设置所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据。
结合第一方面,在第一种可能的实现方式中,在所述迁移源节点将增量迁移数据发送给所述迁移目的节点之后,所述方法还包括:
所述迁移源节点在接收到所述迁移目的节点发送的迁移完成广播信息后,更新目录信息,所述目录信息记录所有锁资源在所述分布式系统中的分布情况。
结合第一种可能的实现方式,在第二种可能的实现方式中,在所述迁移源节点在接收到所述迁移目的节点发送的迁移完成广播信息后,所述方法还包括:
所述迁移源节点删除所述全量迁移数据及所述增量迁移数据。
本发明实施例第二方面提供了一种锁资源迁移方法,所述方法包括:
迁移目的节点接收迁移源节点发送的锁资源的全量迁移数据,所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到通知消息的时刻所述迁移源节点中的锁资源数据,所述通知消息用于通知分布式系统中有节点上线或者离线;
所述迁移目的节点接收所述迁移源节点发送的增量迁移数据,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据;
所述迁移目的节点在接收所述增量迁移数据之后,设置所述锁资源的状态为服务状态。
结合第二方面,在第一种可能的实现方式中,在所述迁移目的节点设置所述锁资源的状态为服务状态之后,所述方法还包括:
所述迁移目的节点向所述分布式系统中的所有节点发送迁移完成广播信息。
结合第一种可能的实现方式,在第二种可能的实现方式中,在所述迁移目的节点向所述分布式系统中的所有节点发送迁移完成广播信息之后,所述方法还包括:
所述迁移目的节点更新目录信息,所述目录信息记录所有锁资源在所述分布式系统中的分布情况。
本发明实施例第三方面提供了一种锁资源迁移方法,所述方法包括:
分布式系统中的迁移源节点接收通知消息,所述通知消息用于通知所述分布式系统中有节点上线或者离线;
所述迁移源节点将锁资源的全量迁移数据发送给所述分布式系统中的迁移目的节点,所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到通知消息的时刻所述迁移源节点中的锁资源数据;
所述迁移源节点在发送所述全量迁移数据之后,设置所述锁资源的状态为停止服务状态;
所述迁移源节点将增量迁移数据发送给所述迁移目的节点,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据;
所述迁移目的节点在接收所述增量迁移数据之后,设置所述锁资源的状态为服务状态。
结合第三方面,在第一种可能的实现方式中,在所述迁移目的节点设置所述锁资源的状态为服务状态之后,所述方法还包括:
所述迁移目的节点向所述分布式系统中的所有节点广播迁移完成广播信息。
结合第一种可能的实现方式,在第二种可能的实现方式中,在所述迁移目的节点向所述分布式系统中的所有节点广播迁移完成广播信息之后,所述方法还包括:
所述分布式系统中的所有节点更新目录信息,所述目录信息记录所有锁资源在所述分布式系统中的分布情况。
结合第一种可能的实现方式,在第三种可能的实现方式中,在所述迁移目的节点向所述分布式系统中的所有节点广播迁移完成广播信息之后,所述方法还包括:
所述迁移源节点删除所述全量迁移数据及所述增量迁移数据。
本发明实施例第四方面提供了一种迁移源节点,包括:
接收单元,用于接收通知消息,所述通知消息用于通知分布式系统中有节点上线或者离线;
第一发送单元,用于将锁资源的全量迁移数据发送给迁移目的节点,所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到所述通知消息的时刻所述迁移源节点中的锁资源数据;
处理单元,用于在所述迁移目的节点接收所述全量迁移数据之后,设置所述锁资源的状态为停止服务状态;
第二发送单元,用于将增量迁移数据发送给所述迁移目的节点,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至设置所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据。
结合第四方面,在第一种可能的实现方式中,所述迁移源节点还包括:
更新单元,用于在接收到所述迁移目的节点发送的迁移完成广播信息后,更新目录信息,所述目录信息记录所有锁资源在所述分布式系统中的分布情况。
结合第一种可能的实现方式,在第二种可能的实现方式中,所述迁移源节点还包括:
删除单元,用于在所述迁移源节点在接收到所述迁移目的节点发送的迁移完成广播信息后,删除所述全量迁移数据及所述增量迁移数据。
本发明实施例第五方面提供了一种迁移目的节点,包括:
第一接收单元,用于接收迁移源节点发送的锁资源的全量迁移数据,所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到通知消息的时刻所述迁移源节点中的锁资源数据,所述通知消息用于通知分布式系统中有节点上线或者离线;
第二接收单元,用于接收所述迁移源节点发送的增量迁移数据,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据;
处理单元,用于在接收所述增量迁移数据之后,设置所述锁资源的状态为服务状态。
结合第五方面,在第一种可能的实现方式中,所述迁移目的节点还包括:
发送单元,用于在所述迁移目的节点设置所述锁资源的状态为服务状态之后,向所述分布式系统中的所有节点发送迁移完成广播信息。
结合第一种可能的实现方式,在第二种可能的实现方式中,所述迁移目的节点还包括:
更新单元,用于在所述迁移目的节点向所述分布式系统中的所有节点发送迁移完成广播信息之后,更新目录信息,所述目录信息记录所有锁资源在所述分布式系统中的分布情况。
本发明实施例第六方面提供了一种分布式系统,包括:
迁移源节点,用于接收通知消息,所述通知消息用于通知所述分布式系统中有节点上线或者离线;将锁资源的全量迁移数据发送给所述分布式系统中的迁移目的节点,所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到通知消息的时刻所述迁移源节点中的锁资源数据;在发送所述全量迁移数据之后,设置所述锁资源的状态为停止服务状态;将增量迁移数据发送给所述迁移目的节点,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据;
迁移目的节点,用于在接收所述增量迁移数据之后,设置所述锁资源的状态为服务状态。
结合第六方面,在第一种可能的实现方式中,所述迁移目的节点还用于:
在所述迁移目的节点设置所述锁资源的状态为服务状态之后,向所述分布式系统中的所有节点广播迁移完成广播信息。
结合第一种可能的实现方式,在第二种可能的实现方式中,所述分布式系统中的所有节点用于:
在所述迁移目的节点向所述分布式系统中的所有节点广播迁移完成广播信息之后,更新目录信息,所述目录信息记录所有锁资源在所述分布式系统中的分布情况。
结合第一种可能的实现方式,在第三种可能的实现方式中,所述迁移源节点还用于:
在所述迁移目的节点向所述分布式系统中的所有节点广播迁移完成广播信息之后,删除所述全量迁移数据及所述增量数据。
本发明实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:
本发明实施例中,迁移源节点接收到用于通知分布式系统中有节点上线或者离线的通知消息后,将锁资源的迁移数据分为全量迁移数据和增量迁移数据,首先将全量迁移数据发送给迁移目的节点,待迁移目的节点接收到全量迁移数据后,设置锁资源的状态为停止服务状态,再将增量迁移数据发送给迁移目的节点,其中全量迁移数据为迁移源节点自开始提供锁服务的时刻起至接收到所述通知消息的时刻所述迁移源节点中的锁资源数据,增量迁移数据为迁移源节点自接收到通知消息的时刻起至设置锁资源的状态为停止服务状态的时刻迁移源节点中的锁资源数据。
相比现有技术中在迁移锁资源的全部迁移数据的过程中,保持锁资源的状态为停止服务状态,本发明实施例中仅在迁移锁资源的增量迁移数据的过程中,保持锁资源的状态为停止服务状态,由于增量迁移数据量相比于全部迁移数据量小,所以缩短了锁资源的状态为停止服务状态的持续时间,实现了减小迁移锁资源对分布式系统的运行效率的影响的技术效果。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对本发明或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为适用于本实施例中锁资源迁移方法的分布式系统的示意图;
图2为本发明实施例中的锁资源迁移方法的流程图;
图3为本发明另一实施例中的锁资源迁移方法的流程图;
图4为本发明再一实施例中的锁资源迁移方法的流程图;
图5为本发明实施例中迁移源节点的功能框图;
图6为发明本实施例中迁移源节点的硬件结构图;
图7为本发明实施例中迁移源目的点的功能框图;
图8为本实施例中迁移目的节点的硬件结构图;
图9为本发明实施例中分布式系统的功能框图。
具体实施方式
本发明实施例提供一种锁资源迁移方法节点及分布式系统,用于解决现有技术中存在的迁移锁资源对分布式系统的运行效率影响较大的技术问题,实现了减小迁移锁资源对分布式系统的运行效率的影响的技术效果。
本发明实施例中,迁移源节点接收到用于通知分布式系统中有节点上线或者离线的通知消息后,将锁资源的迁移数据分为全量迁移数据和增量迁移数据,首先将全量迁移数据发送给迁移目的节点,待迁移目的节点接收到全量迁移数据后,设置锁资源的状态为停止服务状态,再将增量迁移数据发送给迁移目的节点,其中全量迁移数据为迁移源节点自开始提供锁服务的时刻起至接收到所述通知消息的时刻所述迁移源节点中的锁资源数据,增量迁移数据为迁移源节点自接收到通知消息的时刻起至设置锁资源的状态为停止服务状态的时刻迁移源节点中的锁资源数据。
相比现有技术中在迁移锁资源的全部迁移数据的过程中,保持锁资源的状态为停止服务状态,本发明实施例中仅在迁移锁资源的增量迁移数据的过程中,保持锁资源的状态为停止服务状态,由于增量迁移数据量相比于全部迁移数据量小,所以缩短了锁资源的状态为停止服务状态的持续时间,实现了减小迁移锁资源对分布式系统的运行效率的影响的技术效果。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
下面结合附图对本发明的实施方式进行详细说明。
本发明实施例提供一种锁资源迁移方法,适用于分布式系统,分布式系统包括多个节点。多个节点上的每个节点都存储有一个文件或者多个文件的锁资源,用于记录一个或者多个文件中的每一文件被哪些节点加锁以及锁的权限是读权限还是锁权限。由于锁资源占用节点的内存、CPU(英文:Central ProcessingUnit;中文:中央处理器)资源,所以锁资源需要均衡地分布在所有节点上。
当分布式系统中有节点上线或者离线时,为了实现锁资源均衡分布,需要将一部分锁资源迁移到其他节点上。例如:当分布式系统中有节点上线时,需要将已上线的节点上的一部分锁资源迁移到上线的节点上。又例如:当分布式系统中有节点离线时,需要将离线的节点上的所有锁资源迁移到已上线的节点上。
请参考图1,图1为适用于本实施例中锁资源迁移方法的分布式系统的示意图,分布式系统包括:多个节点,包括迁移源节点和迁移目的节点,其中,迁移源节点是产生需要迁移的锁资源的节点,迁移目的节点是接收需要迁移的锁资源的节点。多个节点中的任一节点都可以为迁移源节点或者迁移目的节点。如图1中所示,分布式系统包括两个节点:节点A和节点B。其中,节点B为已上线的节点,节点A由离线切换为上线,所以迁移源节点为节点A,迁移目的节点为节点B。
以下先从迁移源节点侧介绍本实施例中的锁资源迁移方法,请参考图2,图2为本发明实施例中的锁资源迁移方法的流程图,该方法包括:
步骤21:迁移源节点接收通知消息,所述通知消息用于通知分布式系统中有节点上线或者离线;
步骤22:所述迁移源节点将锁资源的全量迁移数据发送给迁移目的节点,所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到所述通知消息的时刻所述迁移源节点中的锁资源数据;
步骤23:所述迁移源节点在所述迁移目的节点接收所述全量迁移数据之后,设置所述锁资源的状态为停止服务状态;
步骤24:所述迁移源节点将增量迁移数据发送给所述迁移目的节点,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至设置所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据。
具体来讲,当分布式系统中有节点上线或者离线时,为实现锁资源均衡分布,需要进行至少一个锁资源的迁移。对于至少一个锁资源中的每个锁资源,以有节点上线或者离线时刻为分界点,将锁资源的迁移数据分为两部分:锁资源的全量迁移数据和锁资源的增量迁移数据。
其中,锁资源的全量迁移数据为迁移源节点自开始提供锁服务的时刻起至接收到所述通知消息的时刻所述迁移源节点中的锁资源数据,锁资源的增量迁移数据为迁移源节点自接收到所述通知消息的时刻起至设置所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据。
当分布式系统中有节点上线或者离线时,迁移源节点会接收到通知消息。迁移源节点在接收到通知消息之后,迁移源节点首先将锁资源的全量迁移数据迁移到迁移目的节点,在迁移目的节点接收到锁资源的全量迁移数据之后,迁移源节点中的锁资源不再处理其他节点发送的加锁请求,改由迁移目的节点中锁资源处理,所以迁移源节点设置锁资源的状态为停止服务状态,然后再将锁资源的增量迁移数据迁移到迁移目的节点。
为了提高迁移效率,迁移源节点可以将锁资源的全量迁移数据打包之后再迁移到迁移目的节点,相应地,在迁移目的节点恢复锁资源的全量迁移数据之后,迁移源节点设置锁资源的状态为停止服务状态。迁移源节点还可以将锁资源的增量迁移数据打包之后再迁移到迁移目的节点。
由于锁资源的全量迁移数据量大,可以在后台运行,即启动一个线程进行锁资源的全量迁移数据的迁移,所以在迁移锁资源的全量迁移数据的过程中,如果有节点向迁移源节点中的锁资源发送加锁请求,迁移源节点中的锁资源可以对加锁请求进行处理,不会受到锁资源迁移的影响。并且在迁移锁资源的全量迁移数据的过程中,迁移源节点和迁移目的节点同时持有锁资源的全量迁移数据,提高了分布式系统的健壮性。
由于锁资源的增量迁移数据量相比于锁资源的全量迁移数据量小,所以迁移时间短,相比现有技术中当分布式系统中有节点上线或者离线时,就设置锁资源的状态为停止服务状态,本发明实施例中在完成全量迁移数据的迁移之后,才设置锁资源的状态为停止服务状态,所以延迟了设置锁状态为停止状态的时间。分布式系统仅在迁移锁资源的增量迁移数据的时间段内对加锁请求延迟处理,减小了锁资源迁移对分布式系统的影响。
在执行完步骤24之后,迁移源节点还可以执行以下步骤:
所述迁移源节点在接收到所述迁移目的节点发送的迁移完成广播信息后,更新目录信息,所述目录信息记录所有锁资源在所述分布式系统中的分布情况。
所述迁移源节点删除所述全量迁移数据及所述增量迁移数据。
具体来讲,迁移源节点在迁移目的节点接收到锁资源的增量迁移数据之后,会接收到迁移目的节点发送的迁移完成广播信息,进而更新目录信息,将锁资源在分布式系统中的存储位置由迁移源节点更新为迁移目的节点。
在锁资源的全量迁移数据和增量迁移数据均迁移完成之后,迁移目的节点上存储有锁资源的全量迁移数据和增量迁移数据,分布式系统中的节点可以向迁移目的节点中的锁资源发送加锁请求,所以迁移源节点可以删除锁资源的全量迁移数据以及增量迁移数据,以提高分布式系统的内存、CPU资源的利用效率。
以下从迁移目的节点侧介绍本实施例中的锁资源迁移方法,请参考图3,图3为本发明另一实施例中的锁资源迁移方法的流程图,该方法包括:
步骤31:迁移目的节点接收迁移源节点发送的锁资源的全量迁移数据,所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到通知消息的时刻所述迁移源节点中的锁资源数据,所述通知消息用于通知分布式系统中有节点上线或者离线;
步骤32:所述迁移目的节点接收所述迁移源节点发送的增量迁移数据,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据;
步骤33:所述迁移目的节点在接收所述增量迁移数据之后,设置所述锁资源的状态为服务状态。
具体来讲,当分布式系统中有节点上线或者离线时,为实现锁资源均衡分布,需要进行至少一个锁资源的迁移。对于至少一个锁资源中的每个锁资源,以有节点上线或者离线时刻为分界点,将锁资源的迁移数据分为两部分:锁资源的全量迁移数据和锁资源的增量迁移数据。
迁移目的节点首先接收迁移源节点发送的锁资源的全量迁移数据,然后接收迁移源节点发送的锁资源的增量迁移数据,在迁移目的节点接收到锁资源的全量迁移数据和增量迁移数据之后,迁移目的节点中的锁资源可以对其他节点发送的加锁请求进行处理,所以迁移目的节点设置锁资源的状态为服务状态。
为了提高迁移效率,迁移源节点可以将锁资源的全量迁移数据打包之后再迁移到迁移目的节点,相应地,迁移目的节点接收到打包的锁资源的全量迁移数据后,需要恢复锁资源的全量迁移数据。迁移源节点还可以将锁资源的增量迁移数据打包之后再迁移到迁移目的节点,相应地,迁移目的节点接收到打包的锁资源的增量迁移数据后,需要恢复锁资源的增量迁移数据之后,迁移目的节点设置锁资源的状态为服务状态。
在执行完步骤33之后,迁移目的节点还可以执行以下步骤:
所述迁移目的节点向所述分布式系统中的所有节点发送迁移完成广播信息;
所述迁移目的节点更新目录信息,所述目录信息记录所有锁资源在所述分布式系统中的分布情况。
具体来讲,迁移目的节点在设置锁资源的状态为服务状态之后,会向分布式系统中的所有节点发送迁移完成广播信息,包括向迁移源节点和迁移目的节点本身发送迁移完成广播信息,通知分布式系统中的所有节点锁资源的存储位置已由迁移源节点改为迁移目的节点。然后迁移目的节点会更新目录信息,将锁资源在分布式系统中的存储位置由迁移源节点更新为迁移目的节点。
下面从分布式系统侧介绍本实施例中的锁资源迁移方法,分布式系统至少包括迁移源节点和迁移目的节点。请参考图4,图4为本发明再一实施例中的锁资源迁移方法的流程图,该方法包括:
步骤41:分布式系统中的迁移源节点接收通知消息,所述通知消息用于通知所述分布式系统中有节点上线或者离线;
步骤42:所述迁移源节点将锁资源的全量迁移数据发送给所述分布式系统中的迁移目的节点,所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到通知消息的时刻所述迁移源节点中的锁资源数据;
步骤43:所述迁移源节点在发送所述全量迁移数据之后,设置所述锁资源的状态为停止服务状态;
步骤44:所述迁移源节点将增量迁移数据发送给所述迁移目的节点,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据;
步骤45:所述迁移目的节点在接收所述增量迁移数据之后,设置所述锁资源的状态为服务状态。
具体来讲,当分布式系统中有节点上线或者离线时,为实现锁资源均衡分布,需要进行至少一个锁资源的迁移。对于至少一个锁资源中的每个锁资源,以有节点上线或者离线时刻为分界点,将锁资源的迁移数据分为两部分:锁资源的全量迁移数据和锁资源的增量迁移数据。
当分布式系统中有节点上线或者离线时,迁移源节点会接收到通知消息。迁移源节点在接收到通知消息之后,迁移源节点首先将锁资源的全量迁移数据从迁移源节点迁移到迁移目的节点,在完成锁资源的全量迁移数据的迁移之后,迁移源节点中的锁资源不再处理其他节点发送的加锁请求,改由迁移目的节点中锁资源处理,所以迁移源节点设置锁资源的状态为停止服务状态,然后迁移源节点再将锁资源的增量迁移数据迁移到迁移目的节点。
分布式系统中的迁移目的节点首先接收迁移源节点发送的锁资源的全量迁移数据,然后接收迁移源节点发送的锁资源的增量迁移数据,在迁移目的节点接收到锁资源的全量迁移数据和增量迁移数据之后,迁移目的节点中的锁资源可以对其他节点发送的加锁请求进行处理,所以迁移目的节点设置锁资源的状态为服务状态。
相比现有技术中在迁移锁资源的全部迁移数据的过程中均设置锁资源的状态为停止服务状态,本发明实施例中仅在迁移锁资源的增量迁移数据的过程中设置锁资源的状态为停止服务状态,由于锁资源的增量迁移数据量相比于锁资源的全部迁移数据量小得多,所以本发明实施例提供的锁资源迁移方法大大缩短了设置锁状态为停止服务状态的时间,减小了锁资源迁移对分布式系统的影响。
在执行完步骤44之后,还可以执行以下步骤:
迁移目的节点向所述分布式系统中的所有节点广播迁移完成广播信息;
所述分布式系统中的所有节点更新目录信息,所述目录信息记录所有锁资源在所述分布式系统中的分布情况。
具体来讲,在迁移目的节点设置锁资源的状态为服务状态之后,需要通知分布式系统中的所有节点锁资源的存储位置发生改变,所以分布式系统向所有节点发送迁移完成广播信息,然后所有节点会更新目录信息,将锁资源在分布式系统中的存储位置由迁移源节点更新为迁移目的节点。
特别的,对于分布式系统中的迁移目的节点,还可以执行以下步骤:
在所述迁移目的节点向所述分布式系统中的所有节点广播迁移完成广播信息之后,所述迁移源节点删除所述全量迁移数据及所述增量迁移数据。
在锁资源的全量迁移数据和增量迁移数据均迁移完成之后之后,迁移目的节点上存储有锁资源的全量迁移数据和增量迁移数据,分布式系统中的节点可以向迁移目的节点中的锁资源发送加锁请求,所以迁移源节点可以删除锁资源的全量迁移数据以及增量迁移数据,以提高分布式系统的内存、CPU资源的利用效率。
下面以迁移源节点为节点A,迁移目的节点为节点B,对分布式系统侧的锁资源的迁移方法举例说明。包括以下步骤:
当节点B上线时,节点A将需要迁移的至少一个锁资源中的每个锁资源的全量迁移数据打包;
节点A将已打包的锁资源的全量迁移数据发送给节点B;
节点B收到已打包的锁资源的全量迁移数据后,恢复锁资源的全量迁移数据;
节点A设置锁资源的状态为停止服务状态;
节点A将需要迁移的至少一个锁资源中的每个锁资源的增量迁移数据打包;
节点A将已打包的锁资源的增量迁移数据发送给节点B;
节点B收到已打包的锁资源的增量迁移数据后,恢复锁资源的增量迁移数据;
节点B设置锁资源的状态为服务状态;
节点B向分布式系统中的所有节点发送迁移完成广播信息;
分布式系统中的所有节点收到迁移完成广播信息后,更新目录信息;
节点A删除锁资源的全量迁移数据及增量迁移数据。
基于同一发明构思,本发明另一实施例提供一种迁移源节点,请参考图5,图5为本发明实施例中迁移源节点的功能框图。图5所示的迁移源节点涉及到的术语的含义以及具体实现,可以参考前述图1至图4以及实施例的相关描述。
请参考图5,迁移源节点包括:
接收单元50,用于接收通知消息,所述通知消息用于通知分布式系统中有节点上线或者离线
第一发送单元51,用于将锁资源的全量迁移数据发送给迁移目的节点,所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到所述通知消息的时刻所述迁移源节点中的锁资源数据;
处理单元52,用于在所述迁移目的节点接收所述全量迁移数据之后,设置所述锁资源的状态为停止服务状态;
第二发送单元53,用于将增量迁移数据发送给所述迁移目的节点,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至设置所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据。
可选的,所述迁移源节点还包括:
更新单元,用于在接收到所述迁移目的节点发送的迁移完成广播信息后,更新目录信息,所述目录信息记录所有锁资源在所述分布式系统中的分布情况。
可选的,所述迁移源节点还包括:
删除单元,用于在所述迁移源节点在接收到所述迁移目的节点发送的迁移完成广播信息后,删除所述全量迁移数据及所述增量迁移数据。
前述图2实施例中的锁资源迁移方法中的各种变化方式和具体实例同样适用于本实施例的迁移源节点,通过前述对锁资源迁移方法的详细描述,本领域技术人员可以清楚的知道本实施例中迁移源节点的实施方法,所以为了说明书的简洁,在此不再详述。
请再参考图6所示,图6为发明本实施例中迁移源节点的硬件结构图。迁移源节点包括:
接收器61,用于接收通知消息,所述通知消息用于通知分布式系统中有节点上线或者离线;
发送器62,用于将锁资源的全量迁移数据发送给迁移目的节点,所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到所述通知消息的时刻所述迁移源节点中的锁资源数据;用于将增量迁移数据发送给所述迁移目的节点,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至设置所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据;
处理器63,用于在所述迁移目的节点接收所述全量迁移数据之后,设置所述锁资源的状态为停止服务状态。
可选的,处理器63还用于在接收到所述迁移目的节点发送的迁移完成广播信息后,更新目录信息,所述目录信息记录所有锁资源在所述分布式系统中的分布情况。
可选的,处理器63还用于在所述迁移源节点在接收到所述迁移目的节点发送的迁移完成广播信息后,删除所述全量迁移数据及所述增量迁移数据。
其中,在图6中,总线架构(用总线600来代表),总线600可以包括任意数量的互联的总线和桥,总线600将包括由处理器63代表的一个或多个处理器和存储器64代表的存储器的各种电路连接在一起。总线600还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口65在总线600和接收器61和发送器62之间提供接口。接收器61和发送器62可以是同一个元件,即收发机,提供用于在传输介质上与各种其他装置通信的单元。
处理器63负责管理总线600和通常的处理,而存储器64可以被用于存储处理器63在执行操作时所使用的数据。
迁移源节点具体可以为笔记本电脑、平板电脑以及其他设备。
前述图2实施例中的锁资源迁移方法中的各种变化方式和具体实例同样适用于本实施例的迁移源节点,通过前述对锁资源迁移方法的详细描述,本领域技术人员可以清楚的知道本实施例中迁移源节点的实施方法,所以为了说明书的简洁,在此不再详述。
基于同一发明构思,本发明另一实施例提供一种迁移目的节点,请参考图7,图7为本发明实施例中迁移源目的点的功能框图。图7所示的迁移目的节点涉及到的术语的含义以及具体实现,可以参考前述图1至图4以及实施例的相关描述。
请参考图7,迁移目的节点包括:
第一接收单元71,用于接收迁移源节点发送的锁资源的全量迁移数据,所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到通知消息的时刻所述迁移源节点中的锁资源数据,所述通知消息用于通知分布式系统中有节点上线或者离线;
第二接收单元72,用于接收所述迁移源节点发送的增量迁移数据,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据;
处理单元73,用于在接收所述增量迁移数据之后,设置所述锁资源的状态为服务状态。
可选的,所述迁移目的节点还包括:
发送单元,用于在所述迁移目的节点设置所述锁资源的状态为服务状态之后,向所述分布式系统中的所有节点发送迁移完成广播信息。
可选的,所述迁移目的节点还包括:
更新单元,用于在所述迁移目的节点向所述分布式系统中的所有节点发送迁移完成广播信息之后,更新目录信息,所述目录信息记录所有锁资源在所述分布式系统中的分布情况。
前述图3实施例中的锁资源迁移方法中的各种变化方式和具体实例同样适用于本实施例的迁移目的节点,通过前述对锁资源迁移方法的详细描述,本领域技术人员可以清楚的知道本实施例中迁移目的节点的实施方法,所以为了说明书的简洁,在此不再详述。
请再参考图8,图8为本实施例中迁移目的节点的硬件结构图。迁移目的节点包括:
接收器81,用于接收迁移源节点发送的锁资源的全量迁移数据,所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到通知消息的时刻所述迁移源节点中的锁资源数据,所述通知消息用于通知分布式系统中有节点上线或者离线;接收所述迁移源节点发送的增量迁移数据,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据;
处理器82,用于在接收所述增量迁移数据之后,设置所述锁资源的状态为服务状态。
可选的,所述迁移目的节点还包括:
发送器83,用于在所述迁移目的节点设置所述锁资源的状态为服务状态之后,向所述分布式系统中的所有节点发送迁移完成广播信息。
可选的,所述处理器82还用于:在所述迁移目的节点向所述分布式系统中的所有节点发送迁移完成广播信息之后,更新目录信息,所述目录信息记录所有锁资源在所述分布式系统中的分布情况。
其中,在图8中,总线架构(用总线800来代表),总线800可以包括任意数量的互联的总线和桥,总线800将包括由处理器82代表的一个或多个处理器和存储器84代表的存储器的各种电路连接在一起。总线800还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口85在总线800和接收器81和发送器83之间提供接口。接收器81和发送器83可以是同一个元件,即收发机,提供用于在传输介质上与各种其他装置通信的单元。
处理器82负责管理总线800和通常的处理,而存储器84可以被用于存储处理器82在执行操作时所使用的数据。
迁移源节点具体可以为笔记本电脑、平板电脑以及其他设备。
前述实施例中描述的迁移目的节点执行过程的各种变化方式和具体实例同样适用于本实施例的迁移目的节点,通过前述对迁移目的节点执行过程的详细描述,本领域技术人员可以清楚的知道本实施例中迁移目的节点的实施方法,所以为了说明书的简洁,在此不再详述。
基于同一发明构思,本发明另一实施例提供一种分布式系统,请参考图9,图9为本发明实施例中分布式系统的功能框图。图9所示的迁移目的节点涉及到的术语的含义以及具体实现,可以参考前述图1至图4以及实施例的相关描述。
请参考图9,分布式系统包括:
迁移源节点91,用于接收通知消息,所述通知消息用于通知所述分布式系统中有节点上线或者离线;将锁资源的全量迁移数据发送给所述分布式系统中的迁移目的节点,所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到通知消息的时刻所述迁移源节点中的锁资源数据;在发送所述全量迁移数据之后,设置所述锁资源的状态为停止服务状态;将增量迁移数据发送给所述迁移目的节点,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据;
迁移目的节点92,用于在接收所述增量迁移数据之后,设置所述锁资源的状态为服务状态。
可选的,所述迁移目的节点92还用于:
在所述迁移目的节点设置所述锁资源的状态为服务状态之后,向所述分布式系统中的所有节点广播迁移完成广播信息。
可选的,所述分布式系统中的所有节点用于:
在所述迁移目的节点向所述分布式系统中的所有节点广播迁移完成广播信息之后,更新目录信息,所述目录信息记录所有锁资源在所述分布式系统中的分布情况。
可选的,所述迁移源节点91还用于:
在所述迁移目的节点向所述分布式系统中的所有节点广播迁移完成广播信息之后,删除所述全量迁移数据及所述增量数据。
前述图4实施例中的锁资源迁移方法中的各种变化方式和具体实例同样适用于本实施例的分布式系统,通过前述对锁资源迁移方法的详细描述,本领域技术人员可以清楚的知道本实施例中分布式系统的实施方法,所以为了说明书的简洁,在此不再详述。
本发明实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:
本发明实施例中,迁移源节点接收到用于通知分布式系统中有节点上线或者离线的通知消息后,将锁资源的迁移数据分为全量迁移数据和增量迁移数据,首先将全量迁移数据发送给迁移目的节点,待迁移目的节点接收到全量迁移数据后,设置锁资源的状态为停止服务状态,再将增量迁移数据发送给迁移目的节点,其中全量迁移数据为迁移源节点自开始提供锁服务的时刻起至接收到所述通知消息的时刻所述迁移源节点中的锁资源数据,增量迁移数据为迁移源节点自接收到通知消息的时刻起至设置锁资源的状态为停止服务状态的时刻迁移源节点中的锁资源数据。
相比现有技术中在迁移锁资源的全部迁移数据的过程中,保持锁资源的状态为停止服务状态,本发明实施例中仅在迁移锁资源的增量迁移数据的过程中,保持锁资源的状态为停止服务状态,由于增量迁移数据量相比于全部迁移数据量小,所以缩短了锁资源的状态为停止服务状态的持续时间,实现了减小迁移锁资源对分布式系统的运行效率的影响的技术效果。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (20)

1.一种锁资源迁移方法,其特征在于,包括:
迁移源节点接收通知消息,所述通知消息用于通知分布式系统中有节点上线或者离线;
所述迁移源节点将锁资源的全量迁移数据发送给迁移目的节点,所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到所述通知消息的时刻所述迁移源节点中的锁资源数据;
所述迁移源节点在所述迁移目的节点接收所述全量迁移数据之后,设置所述锁资源的状态为停止服务状态;
所述迁移源节点将增量迁移数据发送给所述迁移目的节点,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至设置所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据。
2.如权利要求1所述的方法,其特征在于,在所述迁移源节点将增量迁移数据发送给所述迁移目的节点之后,所述方法还包括:
所述迁移源节点在接收到所述迁移目的节点发送的迁移完成广播信息后,更新目录信息,所述目录信息记录所有锁资源在所述分布式系统中的分布情况。
3.如权利要求2所述的方法,其特征在于,在所述迁移源节点在接收到所述迁移目的节点发送的迁移完成广播信息后,所述方法还包括:
所述迁移源节点删除所述全量迁移数据及所述增量迁移数据。
4.一种锁资源迁移方法,其特征在于,包括:
迁移目的节点接收迁移源节点发送的锁资源的全量迁移数据,所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到通知消息的时刻所述迁移源节点中的锁资源数据,所述通知消息用于通知分布式系统中有节点上线或者离线;
所述迁移目的节点接收所述迁移源节点发送的增量迁移数据,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据;
所述迁移目的节点在接收所述增量迁移数据之后,设置所述锁资源的状态为服务状态。
5.如权利要求4所述的方法,其特征在于,在所述迁移目的节点设置所述锁资源的状态为服务状态之后,所述方法还包括:
所述迁移目的节点向所述分布式系统中的所有节点发送迁移完成广播信息。
6.如权利要求5所述的方法,其特征在于,在所述迁移目的节点向所述分布式系统中的所有节点发送迁移完成广播信息之后,所述方法还包括:
所述迁移目的节点更新目录信息,所述目录信息记录所有锁资源在所述分布式系统中的分布情况。
7.一种锁资源迁移方法,其特征在于,包括:
分布式系统中的迁移源节点接收通知消息,所述通知消息用于通知所述分布式系统中有节点上线或者离线;
所述迁移源节点将锁资源的全量迁移数据发送给所述分布式系统中的迁移目的节点,所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到通知消息的时刻所述迁移源节点中的锁资源数据;
所述迁移源节点在发送所述全量迁移数据之后,设置所述锁资源的状态为停止服务状态;
所述迁移源节点将增量迁移数据发送给所述迁移目的节点,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据;
所述迁移目的节点在接收所述增量迁移数据之后,设置所述锁资源的状态为服务状态。
8.如权利要求7所述的方法,其特征在于,在所述迁移目的节点设置所述锁资源的状态为服务状态之后,所述方法还包括:
所述迁移目的节点向所述分布式系统中的所有节点广播迁移完成广播信息。
9.如权利要求8所述的方法,其特征在于,在所述迁移目的节点向所述分布式系统中的所有节点广播迁移完成广播信息之后,所述方法还包括:
所述分布式系统中的所有节点更新目录信息,所述目录信息记录所有锁资源在所述分布式系统中的分布情况。
10.如权利要求8所述的方法,其特征在于,在所述迁移目的节点向所述分布式系统中的所有节点广播迁移完成广播信息之后,所述方法还包括:
所述迁移源节点删除所述全量迁移数据及所述增量迁移数据。
11.一种迁移源节点,其特征在于,包括:
接收单元,用于接收通知消息,所述通知消息用于通知分布式系统中有节点上线或者离线;
第一发送单元,用于将锁资源的全量迁移数据发送给迁移目的节点,所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到所述通知消息的时刻所述迁移源节点中的锁资源数据;
处理单元,用于在所述迁移目的节点接收所述全量迁移数据之后,设置所述锁资源的状态为停止服务状态;
第二发送单元,用于将增量迁移数据发送给所述迁移目的节点,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至设置所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据。
12.如权利要求11所述的迁移源节点,其特征在于,所述迁移源节点还包括:
更新单元,用于在接收到所述迁移目的节点发送的迁移完成广播信息后,更新目录信息,所述目录信息记录所有锁资源在所述分布式系统中的分布情况。
13.如权利要求12所述的迁移源节点,其特征在于,所述迁移源节点还包括:
删除单元,用于在所述迁移源节点在接收到所述迁移目的节点发送的迁移完成广播信息后,删除所述全量迁移数据及所述增量迁移数据。
14.一种迁移目的节点,其特征在于,包括:
第一接收单元,用于接收迁移源节点发送的锁资源的全量迁移数据,所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到通知消息的时刻所述迁移源节点中的锁资源数据,所述通知消息用于通知分布式系统中有节点上线或者离线;
第二接收单元,用于接收所述迁移源节点发送的增量迁移数据,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据;
处理单元,用于在接收所述增量迁移数据之后,设置所述锁资源的状态为服务状态。
15.如权利要求14所述的迁移目的节点,其特征在于,所述迁移目的节点还包括:
发送单元,用于在所述迁移目的节点设置所述锁资源的状态为服务状态之后,向所述分布式系统中的所有节点发送迁移完成广播信息。
16.如权利要求15所述的迁移目的节点,其特征在于,所述迁移目的节点还包括:
更新单元,用于在所述迁移目的节点向所述分布式系统中的所有节点发送迁移完成广播信息之后,更新目录信息,所述目录信息记录所有锁资源在所述分布式系统中的分布情况。
17.一种分布式系统,其特征在于,包括:
迁移源节点,用于接收通知消息,所述通知消息用于通知所述分布式系统中有节点上线或者离线;将锁资源的全量迁移数据发送给所述分布式系统中的迁移目的节点,所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到通知消息的时刻所述迁移源节点中的锁资源数据;在发送所述全量迁移数据之后,设置所述锁资源的状态为停止服务状态;将增量迁移数据发送给所述迁移目的节点,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据;
迁移目的节点,用于在接收所述增量迁移数据之后,设置所述锁资源的状态为服务状态。
18.如权利要求17所述的分布式系统,其特征在于,所述迁移目的节点还用于:
在所述迁移目的节点设置所述锁资源的状态为服务状态之后,向所述分布式系统中的所有节点广播迁移完成广播信息。
19.如权利要求18所述的分布式系统,其特征在于,所述分布式系统中的所有节点用于:
在所述迁移目的节点向所述分布式系统中的所有节点广播迁移完成广播信息之后,更新目录信息,所述目录信息记录所有锁资源在所述分布式系统中的分布情况。
20.如权利要求18所述的分布式系统,其特征在于,所述迁移源节点还用于:
在所述迁移目的节点向所述分布式系统中的所有节点广播迁移完成广播信息之后,删除所述全量迁移数据及所述增量数据。
CN201410677166.7A 2014-11-21 2014-11-21 一种锁资源迁移方法、节点及分布式系统 Pending CN104486373A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410677166.7A CN104486373A (zh) 2014-11-21 2014-11-21 一种锁资源迁移方法、节点及分布式系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410677166.7A CN104486373A (zh) 2014-11-21 2014-11-21 一种锁资源迁移方法、节点及分布式系统

Publications (1)

Publication Number Publication Date
CN104486373A true CN104486373A (zh) 2015-04-01

Family

ID=52760877

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410677166.7A Pending CN104486373A (zh) 2014-11-21 2014-11-21 一种锁资源迁移方法、节点及分布式系统

Country Status (1)

Country Link
CN (1) CN104486373A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106572054A (zh) * 2015-10-09 2017-04-19 阿里巴巴集团控股有限公司 分布式系统中分布式锁服务实现方法以及装置
CN107733916A (zh) * 2017-11-09 2018-02-23 新华三云计算技术有限公司 一种镜像文件的分布式锁资源控制权限迁移方法以及装置
CN108446337A (zh) * 2018-02-28 2018-08-24 新华三云计算技术有限公司 一种锁资源控制权限迁移方法以及装置
CN108874828A (zh) * 2017-05-12 2018-11-23 北京京东尚科信息技术有限公司 数据迁移的方法和装置
CN111797172A (zh) * 2020-09-04 2020-10-20 阿里云计算有限公司 数据迁移方法、装置、设备、分布式系统及存储介质
CN112087495A (zh) * 2016-02-04 2020-12-15 华为技术有限公司 服务迁移方法、装置及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101364186A (zh) * 2008-09-27 2009-02-11 腾讯科技(深圳)有限公司 数据迁移方法、系统、数据迁移服务器及数据接口服务器
CN101997911A (zh) * 2010-10-21 2011-03-30 中兴通讯股份有限公司 一种数据迁移的方法及系统
CN102982085A (zh) * 2012-10-31 2013-03-20 北京奇虎科技有限公司 数据迁移系统和方法
US8533171B2 (en) * 2011-04-08 2013-09-10 Symantec Corporation Method and system for restarting file lock services at an adoptive node during a network filesystem server migration or failover

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101364186A (zh) * 2008-09-27 2009-02-11 腾讯科技(深圳)有限公司 数据迁移方法、系统、数据迁移服务器及数据接口服务器
CN101997911A (zh) * 2010-10-21 2011-03-30 中兴通讯股份有限公司 一种数据迁移的方法及系统
US8533171B2 (en) * 2011-04-08 2013-09-10 Symantec Corporation Method and system for restarting file lock services at an adoptive node during a network filesystem server migration or failover
CN102982085A (zh) * 2012-10-31 2013-03-20 北京奇虎科技有限公司 数据迁移系统和方法

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106572054A (zh) * 2015-10-09 2017-04-19 阿里巴巴集团控股有限公司 分布式系统中分布式锁服务实现方法以及装置
CN106572054B (zh) * 2015-10-09 2019-09-17 阿里巴巴集团控股有限公司 分布式系统中分布式锁服务实现方法以及装置
CN112087495A (zh) * 2016-02-04 2020-12-15 华为技术有限公司 服务迁移方法、装置及系统
CN112087495B (zh) * 2016-02-04 2021-09-21 华为技术有限公司 服务迁移方法、装置及系统
CN108874828A (zh) * 2017-05-12 2018-11-23 北京京东尚科信息技术有限公司 数据迁移的方法和装置
CN107733916A (zh) * 2017-11-09 2018-02-23 新华三云计算技术有限公司 一种镜像文件的分布式锁资源控制权限迁移方法以及装置
CN108446337A (zh) * 2018-02-28 2018-08-24 新华三云计算技术有限公司 一种锁资源控制权限迁移方法以及装置
CN108446337B (zh) * 2018-02-28 2019-09-13 新华三云计算技术有限公司 一种锁资源控制权限迁移方法以及装置
CN111797172A (zh) * 2020-09-04 2020-10-20 阿里云计算有限公司 数据迁移方法、装置、设备、分布式系统及存储介质
WO2022048622A1 (zh) * 2020-09-04 2022-03-10 阿里云计算有限公司 数据迁移方法、装置、设备、分布式系统及存储介质

Similar Documents

Publication Publication Date Title
CN104486373A (zh) 一种锁资源迁移方法、节点及分布式系统
EP3185125B1 (en) Data backup method, system, node and computer storage media
CN103473277B (zh) 文件系统的快照方法和装置
CN103744724A (zh) 定时任务集群方法及其装置
CN103152390B (zh) 分布式存储系统的节点配置方法、装置、节点及系统
CN110019123B (zh) 一种数据迁移方法和装置
CN104219329A (zh) 一种集群服务器中通过内容分发部署业务的方法
CN104468521A (zh) 在线迁移方法、装置和系统
CN110162334B (zh) 一种代码管理方法、装置及存储介质
CN103530168B (zh) 基于虚拟化技术的多卫星遥感数据处理系统和方法
CN104092719A (zh) 文件传输方法、装置及分布式集群文件系统
CN104850416A (zh) 一种升级系统、方法、装置及云计算节点
CN103677674A (zh) 一种数据处理方法及装置
CN102508717A (zh) 一种应用于多核处理器的内存调度方法及装置
CN112069195A (zh) 基于数据库的消息传输方法、装置、电子设备及存储介质
CN105991463B (zh) 实现流量控制的方法、消息主节点、令牌服务器及系统
CN104793981A (zh) 一种虚拟机集群的在线快照管理方法及装置
CN112631268A (zh) 调度机器人的方法和装置
KR101497669B1 (ko) 일정 수 이상의 파일 조각으로 원본 파일을 복구하는 파일 관리 장치 및 방법
CN107967150B (zh) 一种线程执行顺序确定方法、装置、设备及存储介质
CN103634385A (zh) 一种数据同步系统、方法及服务器
CN111581285B (zh) 数据信息的同步方法、装置、电子设备和介质
CN105512091A (zh) 一种内存分配方法及装置
CN115878138B (zh) 应用预下载方法、装置、计算机、存储介质
CN110233791B (zh) 数据去重方法和装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20150401