《一种锁资源迁移方法、节点及分布式系统.pdf》由会员分享,可在线阅读,更多相关《一种锁资源迁移方法、节点及分布式系统.pdf(22页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 (43)申请公布日 (21)申请号 201410677166.7(22)申请日 2014.11.21H04L 29/08(2006.01)H04L 12/18(2006.01)(71)申请人 华为技术有限公司地址 518129 广东省深圳市龙岗区坂田华为总部办公楼(72)发明人 王勋 范超 陈光(74)专利代理机构 北京同达信恒知识产权代理有限公司 11291代理人 冯艳莲(54) 发明名称一种锁资源迁移方法、节点及分布式系统(57) 摘要本发明提供一种锁资源迁移方法、节点及分布式系统,该方法包括:迁移源节点接收通知消息,所述通知消息用于通知分布式系统中有节点上线或者离线 。
2、;所述迁移源节点将锁资源的全量迁移数据发送给迁移目的节点,所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到所述通知消息的时刻所述迁移源节点中的锁资源数据 ;所述迁移源节点在所述迁移目的节点接收所述全量迁移数据之后,设置所述锁资源的状态为停止服务状态 ;所述迁移源节点将增量迁移数据发送给所述迁移目的节点,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至设置所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据。(51)Int.Cl.(19)中华人民共和国国家知识产权局(12)发明专利申请权利要求书3页 说明书14页 附图4页(10)申请公布号 CN 104。
3、486373 A(43)申请公布日 2015.04.01CN 104486373 A1/3 页21.一种锁资源迁移方法,其特征在于,包括 :迁移源节点接收通知消息,所述通知消息用于通知分布式系统中有节点上线或者离线;所述迁移源节点将锁资源的全量迁移数据发送给迁移目的节点,所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到所述通知消息的时刻所述迁移源节点中的锁资源数据 ;所述迁移源节点在所述迁移目的节点接收所述全量迁移数据之后,设置所述锁资源的状态为停止服务状态 ;所述迁移源节点将增量迁移数据发送给所述迁移目的节点,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至设置。
4、所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据。2.如权利要求 1 所述的方法,其特征在于,在所述迁移源节点将增量迁移数据发送给所述迁移目的节点之后,所述方法还包括 :所述迁移源节点在接收到所述迁移目的节点发送的迁移完成广播信息后,更新目录信息,所述目录信息记录所有锁资源在所述分布式系统中的分布情况。3.如权利要求 2 所述的方法,其特征在于,在所述迁移源节点在接收到所述迁移目的节点发送的迁移完成广播信息后,所述方法还包括 :所述迁移源节点删除所述全量迁移数据及所述增量迁移数据。4.一种锁资源迁移方法,其特征在于,包括 :迁移目的节点接收迁移源节点发送的锁资源的全量迁移数据,。
5、所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到通知消息的时刻所述迁移源节点中的锁资源数据,所述通知消息用于通知分布式系统中有节点上线或者离线 ;所述迁移目的节点接收所述迁移源节点发送的增量迁移数据,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据 ;所述迁移目的节点在接收所述增量迁移数据之后,设置所述锁资源的状态为服务状态。5.如权利要求 4 所述的方法,其特征在于,在所述迁移目的节点设置所述锁资源的状态为服务状态之后,所述方法还包括 :所述迁移目的节点向所述分布式系统中的所有节点发送迁移完成广播信。
6、息。6.如权利要求 5 所述的方法,其特征在于,在所述迁移目的节点向所述分布式系统中的所有节点发送迁移完成广播信息之后,所述方法还包括 :所述迁移目的节点更新目录信息,所述目录信息记录所有锁资源在所述分布式系统中的分布情况。7.一种锁资源迁移方法,其特征在于,包括 :分布式系统中的迁移源节点接收通知消息,所述通知消息用于通知所述分布式系统中有节点上线或者离线 ;所述迁移源节点将锁资源的全量迁移数据发送给所述分布式系统中的迁移目的节点,所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到通知消息的时权 利 要 求 书CN 104486373 A2/3 页3刻所述迁移源节点中的锁资源数。
7、据 ;所述迁移源节点在发送所述全量迁移数据之后,设置所述锁资源的状态为停止服务状态;所述迁移源节点将增量迁移数据发送给所述迁移目的节点,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据 ;所述迁移目的节点在接收所述增量迁移数据之后,设置所述锁资源的状态为服务状态。8.如权利要求 7 所述的方法,其特征在于,在所述迁移目的节点设置所述锁资源的状态为服务状态之后,所述方法还包括 :所述迁移目的节点向所述分布式系统中的所有节点广播迁移完成广播信息。9.如权利要求 8 所述的方法,其特征在于,在所述迁移目的节点向所述分布式系。
8、统中的所有节点广播迁移完成广播信息之后,所述方法还包括 :所述分布式系统中的所有节点更新目录信息,所述目录信息记录所有锁资源在所述分布式系统中的分布情况。10.如权利要求 8 所述的方法,其特征在于,在所述迁移目的节点向所述分布式系统中的所有节点广播迁移完成广播信息之后,所述方法还包括 :所述迁移源节点删除所述全量迁移数据及所述增量迁移数据。11.一种迁移源节点,其特征在于,包括 :接收单元,用于接收通知消息,所述通知消息用于通知分布式系统中有节点上线或者离线 ;第一发送单元,用于将锁资源的全量迁移数据发送给迁移目的节点,所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到所述通知。
9、消息的时刻所述迁移源节点中的锁资源数据 ;处理单元,用于在所述迁移目的节点接收所述全量迁移数据之后设置所述锁资源的状态为停止服务状态 ;第二发送单元,用于将增量迁移数据发送给所述迁移目的节点,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至设置所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据。12.如权利要求 11 所述的迁移源节点,其特征在于,所述迁移源节点还包括 :更新单元,用于在接收到所述迁移目的节点发送的迁移完成广播信息后,更新目录信息,所述目录信息记录所有锁资源在所述分布式系统中的分布情况。13.如权利要求 12 所述的迁移源节点,其特征在于,所述迁移源。
10、节点还包括 :删除单元,用于在所述迁移源节点在接收到所述迁移目的节点发送的迁移完成广播信息后,删除所述全量迁移数据及所述增量迁移数据。14.一种迁移目的节点,其特征在于,包括 :第一接收单元,用于接收迁移源节点发送的锁资源的全量迁移数据,所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到通知消息的时刻所述迁移源节点中的锁资源数据,所述通知消息用于通知分布式系统中有节点上线或者离线 ;权 利 要 求 书CN 104486373 A3/3 页4第二接收单元,用于接收所述迁移源节点发送的增量迁移数据,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至所述锁资源的状态为停止服。
11、务状态的时刻所述迁移源节点中的锁资源数据 ;处理单元,用于在接收所述增量迁移数据之后,设置所述锁资源的状态为服务状态。15.如权利要求 14 所述的迁移目的节点,其特征在于,所述迁移目的节点还包括 :发送单元,用于在所述迁移目的节点设置所述锁资源的状态为服务状态之后,向所述分布式系统中的所有节点发送迁移完成广播信息。16.如权利要求 15 所述的迁移目的节点,其特征在于,所述迁移目的节点还包括 :更新单元,用于在所述迁移目的节点向所述分布式系统中的所有节点发送迁移完成广播信息之后,更新目录信息,所述目录信息记录所有锁资源在所述分布式系统中的分布情况。17.一种分布式系统,其特征在于,包括 :迁。
12、移源节点,用于接收通知消息,所述通知消息用于通知所述分布式系统中有节点上线或者离线 ;将锁资源的全量迁移数据发送给所述分布式系统中的迁移目的节点,所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到通知消息的时刻所述迁移源节点中的锁资源数据 ;在发送所述全量迁移数据之后,设置所述锁资源的状态为停止服务状态 ;将增量迁移数据发送给所述迁移目的节点,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据 ;迁移目的节点,用于在接收所述增量迁移数据之后,设置所述锁资源的状态为服务状态。18.如权利要求 17 所述的分。
13、布式系统,其特征在于,所述迁移目的节点还用于 :在所述迁移目的节点设置所述锁资源的状态为服务状态之后,向所述分布式系统中的所有节点广播迁移完成广播信息。19.如权利要求 18 所述的分布式系统,其特征在于,所述分布式系统中的所有节点用于:在所述迁移目的节点向所述分布式系统中的所有节点广播迁移完成广播信息之后,更新目录信息,所述目录信息记录所有锁资源在所述分布式系统中的分布情况。20.如权利要求 18 所述的分布式系统,其特征在于,所述迁移源节点还用于 :在所述迁移目的节点向所述分布式系统中的所有节点广播迁移完成广播信息之后,删除所述全量迁移数据及所述增量数据。权 利 要 求 书CN 10448。
14、6373 A1/14 页5一种锁资源迁移方法、节点及分布式系统技术领域0001 本发明涉及电子技术领域,尤其涉及一种锁资源迁移方法、节点及分布式系统。背景技术0002 分布式系统中有多个节点,当多个节点中有至少两个节点同时对同一文件分别进行写操作,或者同时对同一文件分别进行写操作和读操作,就会产生冲突。例如 :A 节点对一个文件进行写操作时,B 节点也对相同的文件进行写操作,那么文件操作就会产生冲突。又例如 :A 节点对一个文件进行写操作时,B 节点也对相同的文件进行读操作,文件操作也会产生冲突。还例如 :A 节点对一个文件的 0,100 区间进行读操作,节点 B 也对相同文件的 50,100。
15、 区间进行写操作,文件操作也会产生冲突。由于一个文件有多个区间,所以不同节点对同一文件的两个区间分别进行读操作和写操作,且两个区间有重叠部分时,文件操作就会产生大量的冲突。0003 为了避免分布式系统中的各个节点在操作文件时产生冲突,一般会在各个节点上都存储有一个文件或者多个文件的锁资源,用于记录一个或者多个文件中的每一文件被哪些节点加锁以及锁的权限是读权限还是写权限。节点在对文件进行读操作或者写操作之前,需要向存储有该文件的锁资源的节点发送加锁请求,请求对该文件进行加锁,以获取读权限或者写权限,然后再对该文件进行读操作或者写操作,以保证文件操作不会产生冲突。0004 现有技术中,当分布式系统。
16、中有节点上线或者下线时,为实现锁资源在分布式系统中均衡分布,需要将其他节点上的锁资源迁移到上线节点,或者需要将下线节点上的锁资源迁移到其他节点。具体的迁移方法为 :首先迁移源节点将需要迁移的锁资源的状态设置为停止服务状态,然后迁移源节点将需要迁移的锁资源整体迁移到迁移目的节点上,最后迁移目的节点将已迁移过来的锁资源的状态设置为服务状态。0005 由于需要迁移的锁资源量大,所以在较长一段时间内,其他节点都无法使用迁移锁资源的锁服务,对分布式系统的运行效率影响较大。0006 因此,现有技术存在的技术问题是 :迁移锁资源对分布式系统的运行效率影响较大。发明内容0007 本发明实施例提供一种锁资源迁移。
17、方法、节点及分布式系统,用于解决现有技术中存在的迁移锁资源对分布式系统的运行效率影响较大的技术问题,实现了减小迁移锁资源对分布式系统的运行效率的影响的技术效果。0008 本发明实施例第一方面提供了一种锁资源迁移方法,所述方法包括 :0009 迁移源节点接收通知消息,所述通知消息用于通知分布式系统中有节点上线或者离线 ;0010 所述迁移源节点将锁资源的全量迁移数据发送给迁移目的节点,所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到所述通知消息的时刻所述迁移说 明 书CN 104486373 A2/14 页6源节点中的锁资源数据 ;0011 所述迁移源节点在所述迁移目的节点接收所。
18、述全量迁移数据之后,设置所述锁资源的状态为停止服务状态 ;0012 所述迁移源节点将增量迁移数据发送给所述迁移目的节点,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至设置所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据。0013 结合第一方面,在第一种可能的实现方式中,在所述迁移源节点将增量迁移数据发送给所述迁移目的节点之后,所述方法还包括 :0014 所述迁移源节点在接收到所述迁移目的节点发送的迁移完成广播信息后,更新目录信息,所述目录信息记录所有锁资源在所述分布式系统中的分布情况。0015 结合第一种可能的实现方式,在第二种可能的实现方式中,在所述迁移源节点。
19、在接收到所述迁移目的节点发送的迁移完成广播信息后,所述方法还包括 :0016 所述迁移源节点删除所述全量迁移数据及所述增量迁移数据。0017 本发明实施例第二方面提供了一种锁资源迁移方法,所述方法包括 :0018 迁移目的节点接收迁移源节点发送的锁资源的全量迁移数据,所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到通知消息的时刻所述迁移源节点中的锁资源数据,所述通知消息用于通知分布式系统中有节点上线或者离线 ;0019 所述迁移目的节点接收所述迁移源节点发送的增量迁移数据,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至所述锁资源的状态为停止服务状态的时刻所述迁移。
20、源节点中的锁资源数据 ;0020 所述迁移目的节点在接收所述增量迁移数据之后,设置所述锁资源的状态为服务状态。0021 结合第二方面,在第一种可能的实现方式中,在所述迁移目的节点设置所述锁资源的状态为服务状态之后,所述方法还包括 :0022 所述迁移目的节点向所述分布式系统中的所有节点发送迁移完成广播信息。0023 结合第一种可能的实现方式,在第二种可能的实现方式中,在所述迁移目的节点向所述分布式系统中的所有节点发送迁移完成广播信息之后,所述方法还包括 :0024 所述迁移目的节点更新目录信息,所述目录信息记录所有锁资源在所述分布式系统中的分布情况。0025 本发明实施例第三方面提供了一种锁资。
21、源迁移方法,所述方法包括 :0026 分布式系统中的迁移源节点接收通知消息,所述通知消息用于通知所述分布式系统中有节点上线或者离线 ;0027 所述迁移源节点将锁资源的全量迁移数据发送给所述分布式系统中的迁移目的节点,所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到通知消息的时刻所述迁移源节点中的锁资源数据 ;0028 所述迁移源节点在发送所述全量迁移数据之后,设置所述锁资源的状态为停止服务状态 ;0029 所述迁移源节点将增量迁移数据发送给所述迁移目的节点,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至所述锁资源的状态为停止服务状态的说 明 书CN 10448。
22、6373 A3/14 页7时刻所述迁移源节点中的锁资源数据 ;0030 所述迁移目的节点在接收所述增量迁移数据之后,设置所述锁资源的状态为服务状态。0031 结合第三方面,在第一种可能的实现方式中,在所述迁移目的节点设置所述锁资源的状态为服务状态之后,所述方法还包括 :0032 所述迁移目的节点向所述分布式系统中的所有节点广播迁移完成广播信息。0033 结合第一种可能的实现方式,在第二种可能的实现方式中,在所述迁移目的节点向所述分布式系统中的所有节点广播迁移完成广播信息之后,所述方法还包括 :0034 所述分布式系统中的所有节点更新目录信息,所述目录信息记录所有锁资源在所述分布式系统中的分布情。
23、况。0035 结合第一种可能的实现方式,在第三种可能的实现方式中,在所述迁移目的节点向所述分布式系统中的所有节点广播迁移完成广播信息之后,所述方法还包括 :0036 所述迁移源节点删除所述全量迁移数据及所述增量迁移数据。0037 本发明实施例第四方面提供了一种迁移源节点,包括 :0038 接收单元,用于接收通知消息,所述通知消息用于通知分布式系统中有节点上线或者离线 ;0039 第一发送单元,用于将锁资源的全量迁移数据发送给迁移目的节点所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到所述通知消息的时刻所述迁移源节点中的锁资源数据 ;0040 处理单元,用于在所述迁移目的节点接收。
24、所述全量迁移数据之后,设置所述锁资源的状态为停止服务状态 ;0041 第二发送单元,用于将增量迁移数据发送给所述迁移目的节点,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至设置所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据。0042 结合第四方面,在第一种可能的实现方式中,所述迁移源节点还包括 :0043 更新单元,用于在接收到所述迁移目的节点发送的迁移完成广播信息后,更新目录信息,所述目录信息记录所有锁资源在所述分布式系统中的分布情况。0044 结合第一种可能的实现方式,在第二种可能的实现方式中,所述迁移源节点还包括:0045 删除单元,用于在所述迁移源节点。
25、在接收到所述迁移目的节点发送的迁移完成广播信息后,删除所述全量迁移数据及所述增量迁移数据。0046 本发明实施例第五方面提供了一种迁移目的节点,包括 :0047 第一接收单元,用于接收迁移源节点发送的锁资源的全量迁移数据所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到通知消息的时刻所述迁移源节点中的锁资源数据,所述通知消息用于通知分布式系统中有节点上线或者离线 ;0048 第二接收单元,用于接收所述迁移源节点发送的增量迁移数据,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据 ;0049 处理单元,用。
26、于在接收所述增量迁移数据之后,设置所述锁资源的状态为服务状说 明 书CN 104486373 A4/14 页8态。0050 结合第五方面,在第一种可能的实现方式中,所述迁移目的节点还包括 :0051 发送单元,用于在所述迁移目的节点设置所述锁资源的状态为服务状态之后,向所述分布式系统中的所有节点发送迁移完成广播信息。0052 结合第一种可能的实现方式,在第二种可能的实现方式中,所述迁移目的节点还包括 :0053 更新单元,用于在所述迁移目的节点向所述分布式系统中的所有节点发送迁移完成广播信息之后,更新目录信息,所述目录信息记录所有锁资源在所述分布式系统中的分布情况。0054 本发明实施例第六方。
27、面提供了一种分布式系统,包括 :0055 迁移源节点,用于接收通知消息,所述通知消息用于通知所述分布式系统中有节点上线或者离线 ;将锁资源的全量迁移数据发送给所述分布式系统中的迁移目的节点,所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到通知消息的时刻所述迁移源节点中的锁资源数据 ;在发送所述全量迁移数据之后,设置所述锁资源的状态为停止服务状态 ;将增量迁移数据发送给所述迁移目的节点,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据 ;0056 迁移目的节点,用于在接收所述增量迁移数据之后,设置所述锁。
28、资源的状态为服务状态。0057 结合第六方面,在第一种可能的实现方式中,所述迁移目的节点还用于 :0058 在所述迁移目的节点设置所述锁资源的状态为服务状态之后,向所述分布式系统中的所有节点广播迁移完成广播信息。0059 结合第一种可能的实现方式,在第二种可能的实现方式中,所述分布式系统中的所有节点用于 :0060 在所述迁移目的节点向所述分布式系统中的所有节点广播迁移完成广播信息之后,更新目录信息,所述目录信息记录所有锁资源在所述分布式系统中的分布情况。0061 结合第一种可能的实现方式,在第三种可能的实现方式中,所述迁移源节点还用于:0062 在所述迁移目的节点向所述分布式系统中的所有节点。
29、广播迁移完成广播信息之后,删除所述全量迁移数据及所述增量数据。0063 本发明实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点 :0064 本发明实施例中,迁移源节点接收到用于通知分布式系统中有节点上线或者离线的通知消息后,将锁资源的迁移数据分为全量迁移数据和增量迁移数据首先将全量迁移数据发送给迁移目的节点,待迁移目的节点接收到全量迁移数据后,设置锁资源的状态为停止服务状态,再将增量迁移数据发送给迁移目的节点,其中全量迁移数据为迁移源节点自开始提供锁服务的时刻起至接收到所述通知消息的时刻所述迁移源节点中的锁资源数据,增量迁移数据为迁移源节点自接收到通知消息的时刻起至设置锁资源的状态。
30、为停止服务状态的时刻迁移源节点中的锁资源数据。0065 相比现有技术中在迁移锁资源的全部迁移数据的过程中,保持锁资源的状态为停说 明 书CN 104486373 A5/14 页9止服务状态,本发明实施例中仅在迁移锁资源的增量迁移数据的过程中,保持锁资源的状态为停止服务状态,由于增量迁移数据量相比于全部迁移数据量小,所以缩短了锁资源的状态为停止服务状态的持续时间,实现了减小迁移锁资源对分布式系统的运行效率的影响的技术效果。附图说明0066 为了更清楚地说明本发明或现有技术中的技术方案,下面将对本发明或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例。
31、,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。0067 图 1 为适用于本实施例中锁资源迁移方法的分布式系统的示意图 ;0068 图 2 为本发明实施例中的锁资源迁移方法的流程图 ;0069 图 3 为本发明另一实施例中的锁资源迁移方法的流程图 ;0070 图 4 为本发明再一实施例中的锁资源迁移方法的流程图 ;0071 图 5 为本发明实施例中迁移源节点的功能框图 ;0072 图 6 为发明本实施例中迁移源节点的硬件结构图 ;0073 图 7 为本发明实施例中迁移源目的点的功能框图 ;0074 图 8 为本实施例中迁移目的节点的硬件结构图 ;00。
32、75 图 9 为本发明实施例中分布式系统的功能框图。具体实施方式0076 本发明实施例提供一种锁资源迁移方法节点及分布式系统,用于解决现有技术中存在的迁移锁资源对分布式系统的运行效率影响较大的技术问题,实现了减小迁移锁资源对分布式系统的运行效率的影响的技术效果。0077 本发明实施例中,迁移源节点接收到用于通知分布式系统中有节点上线或者离线的通知消息后,将锁资源的迁移数据分为全量迁移数据和增量迁移数据首先将全量迁移数据发送给迁移目的节点,待迁移目的节点接收到全量迁移数据后,设置锁资源的状态为停止服务状态,再将增量迁移数据发送给迁移目的节点,其中全量迁移数据为迁移源节点自开始提供锁服务的时刻起至。
33、接收到所述通知消息的时刻所述迁移源节点中的锁资源数据,增量迁移数据为迁移源节点自接收到通知消息的时刻起至设置锁资源的状态为停止服务状态的时刻迁移源节点中的锁资源数据。0078 相比现有技术中在迁移锁资源的全部迁移数据的过程中,保持锁资源的状态为停止服务状态,本发明实施例中仅在迁移锁资源的增量迁移数据的过程中,保持锁资源的状态为停止服务状态,由于增量迁移数据量相比于全部迁移数据量小,所以缩短了锁资源的状态为停止服务状态的持续时间,实现了减小迁移锁资源对分布式系统的运行效率的影响的技术效果。0079 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的。
34、技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员说 明 书CN 104486373 A6/14 页10在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。0080 本文中术语“和 / 或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A 和 / 或 B,可以表示 :单独存在 A,同时存在 A 和 B,单独存在 B 这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。0081 下面结合附图对本发明的实施方式进行详细说明。0082 本发明实施例提供一种。
35、锁资源迁移方法,适用于分布式系统,分布式系统包括多个节点。多个节点上的每个节点都存储有一个文件或者多个文件的锁资源,用于记录一个或者多个文件中的每一文件被哪些节点加锁以及锁的权限是读权限还是锁权限。由于锁资源占用节点的内存、CPU( 英文 :Central Processing Unit ;中文 :中央处理器 ) 资源,所以锁资源需要均衡地分布在所有节点上。0083 当分布式系统中有节点上线或者离线时,为了实现锁资源均衡分布,需要将一部分锁资源迁移到其他节点上。例如 :当分布式系统中有节点上线时,需要将已上线的节点上的一部分锁资源迁移到上线的节点上。又例如 :当分布式系统中有节点离线时,需要将。
36、离线的节点上的所有锁资源迁移到已上线的节点上。0084 请参考图 1,图 1 为适用于本实施例中锁资源迁移方法的分布式系统的示意图,分布式系统包括 :多个节点,包括迁移源节点和迁移目的节点,其中,迁移源节点是产生需要迁移的锁资源的节点,迁移目的节点是接收需要迁移的锁资源的节点。多个节点中的任一节点都可以为迁移源节点或者迁移目的节点。如图1中所示,分布式系统包括两个节点 :节点 A 和节点 B。其中,节点 B 为已上线的节点,节点 A 由离线切换为上线,所以迁移源节点为节点 A,迁移目的节点为节点 B。0085 以下先从迁移源节点侧介绍本实施例中的锁资源迁移方法,请参考图 2,图 2 为本发明实。
37、施例中的锁资源迁移方法的流程图,该方法包括 :0086 步骤 21 :迁移源节点接收通知消息,所述通知消息用于通知分布式系统中有节点上线或者离线 ;0087 步骤 22 :所述迁移源节点将锁资源的全量迁移数据发送给迁移目的节点,所述全量迁移数据为所述迁移源节点自开始提供锁服务的时刻起至接收到所述通知消息的时刻所述迁移源节点中的锁资源数据 ;0088 步骤 23 :所述迁移源节点在所述迁移目的节点接收所述全量迁移数据之后,设置所述锁资源的状态为停止服务状态 ;0089 步骤 24 :所述迁移源节点将增量迁移数据发送给所述迁移目的节点,所述增量迁移数据为所述迁移源节点自接收到所述通知消息的时刻起至设置所述锁资源的状态为停止服务状态的时刻所述迁移源节点中的锁资源数据。0090 具体来讲,当分布式系统中有节点上线或者离线时,为实现锁资源均衡分布,需要进行至少一个锁资源的迁移。对于至少一个锁资源中的每个锁资源,以有节点上线或者离线时刻为分界点,将锁资源的迁移数据分为两部分 :锁资源的全量迁移数据和锁资源的增量迁移数据。0091 其中,锁资源的全量迁移数据为迁移源节点自开始提供锁服务的时刻起至接收到所述通知消息的时刻所述迁移源节点中的锁资源数据,锁资源的增量迁移数据为迁移源节点自接收到所述通知消息的时刻起至设置所述锁资源的状态为停止服务状态的时刻所述说 明 书CN 104486373 A。