当前位置: 首页 > 专利查询>蔡国凤专利>正文

一种分布式系统多节点锁定方法技术方案

技术编号:26596904 阅读:36 留言:0更新日期:2020-12-04 21:18
本发明专利技术公开了一种分布式系统多节点锁定方法,包括步骤:一、为所有待锁定节点分配身份信息;二、对所有待锁定节点发送预锁定请求;三、判断所有待锁定节点是否都预锁定成功,当有待锁定节点预锁定失败时,向各个预锁定成功的待锁定节点发送解除预锁定报文,预锁定失败,等待时间T1,返回步骤二;当所有待锁定节点都预锁定成功时,对所有待锁定节点发送锁定请求,预锁定成功,执行步骤四;四、判断所有待锁定节点是否都锁定成功,当有待锁定节点锁定失败时,向各个锁定成功的待锁定节点发送解除锁定报文,锁定失败,等待时间T2,返回步骤二;当所有待锁定节点都锁定成功时,锁定成功。本发明专利技术不受权威节点的约束,不存在单点失效和死锁问题。

【技术实现步骤摘要】
一种分布式系统多节点锁定方法
本专利技术属于分布式系统
,具体涉及一种分布式系统多节点锁定方法。
技术介绍
分布式系统使用过程中,一些操作需要对资源进行锁定,以确保不被其他操作干扰,从而影响运行结果。不同于单机系统中,每个操作可以系统时间判定自己是否更早提出资源锁定请求,从而决定该操作可以优先对资源进行锁定。分布式系统中,对资源的锁定操作是以锁定请求报文的形式在网络中传播,分布式节点之间没有标准时间可以参考,因此也不易判定哪个操作优先发送了资源锁定请求。分布式系统中一种通用的锁机制是由一个权威节点对所有资源的锁进行管理,操作只需要向该权威节点请求锁,而不需要向该操作涉及的每个分布式节点请求锁,避免了资源锁定请求到达每个节点时间不一致带来的死锁问题。然而这种集中管理的方式存在单点瓶颈,即使通过Zookeeper之类的分布式锁机制在一定程度上解决了单点瓶颈问题,但是在该机制选主期间,没有权威节点,也就不能实现对资源的锁定,不仅增加了权威节点的维护开销,而且在权威节点切换过程中,不能使用分布式锁服务。专利技术内容本专利技本文档来自技高网...

【技术保护点】
1.一种分布式系统多节点锁定方法,其特征在于,该方法包括以下步骤:/n步骤一、为分布式系统中所有待锁定节点分配身份信息;/n步骤二、对所有待锁定节点发送预锁定请求;/n步骤三、判断所有待锁定节点是否都预锁定成功,当有待锁定节点预锁定失败时,向各个预锁定成功的待锁定节点发送解除预锁定报文,预锁定失败,等待时间T1,返回执行步骤二;当所有待锁定节点都预锁定成功时,对所有待锁定节点发送锁定请求,预锁定成功,执行步骤四;/n步骤四、判断所有待锁定节点是否都锁定成功,当有待锁定节点锁定失败时,向各个锁定成功的待锁定节点发送解除锁定报文,锁定失败,等待时间T2,返回执行步骤二;当所有待锁定节点都锁定成功时...

【技术特征摘要】
1.一种分布式系统多节点锁定方法,其特征在于,该方法包括以下步骤:
步骤一、为分布式系统中所有待锁定节点分配身份信息;
步骤二、对所有待锁定节点发送预锁定请求;
步骤三、判断所有待锁定节点是否都预锁定成功,当有待锁定节点预锁定失败时,向各个预锁定成功的待锁定节点发送解除预锁定报文,预锁定失败,等待时间T1,返回执行步骤二;当所有待锁定节点都预锁定成功时,对所有待锁定节点发送锁定请求,预锁定成功,执行步骤四;
步骤四、判断所有待锁定节点是否都锁定成功,当有待锁定节点锁定失败时,向各个锁定成功的待锁定节点发送解除锁定报文,锁定失败,等待时间T2,返回执行步骤二;当所有待锁定节点都锁定成功时,锁定成功。


2.按照权利要求1所述的一种分布式系统多节点锁定方法,其特征在于:步骤三中所述判断所有待锁定节点是否都预锁定成功时采用的方法为:
当发送预锁定请求后,在设定的预锁定报文返回时间段阈值t1内没有收到某个待锁定节点发送回的预锁定成功报文或预锁定失败报文时,或者当发送预锁定请求后,在设定的预锁定报文返回时间段阈值t1内收到某个待锁定节点发送回的预锁定失败报文时,判断为该待锁定节点锁定失败;
当发送预锁定请求后,在设定的预锁定报文返回时间段阈值t1内收到某个待锁定节点发送回的预锁定成功报文时,判断为该待锁定节点锁定成功。


3.按照权利要求1所述的一种分布式系统多节点锁定方法,其特征在于:步骤四中所述判断所有待锁定节点是否都锁定成功时采用的方法为:
当发送锁定请求后,在设定的锁定报文返回时间段阈值t2内没有收到某个待锁定节点发送回的锁定成功报文或锁定失败报文时,或者当发送锁定请求后,在设定的锁定报文返回时间段阈值t2内收到某个待锁定节点发送回的锁定失败报文时,判断为该待锁定节点锁定失败;
当发送锁定请求后,在设定的锁定报文返回时间段阈值t2内收到某个待锁定节点发送回的锁定成功报文时,判断为该待锁定节点锁定成功。


4.按照权利要求1所述的一种分布式系统多节点锁定方法,其特征在于:步骤三中所述当有待锁定节点预锁定失败时,向各个预锁定成功的待锁定节点发送解除预锁定报文时,还对解除预锁定是否成功进行判断,具体的判断方法为:
当发送解除预锁定报文后,在设定的解除预锁定成功报文返回时间段阈值t3内没有收到某个待锁定节点发送回的解除预锁定成功报文时,判断为该待锁定节点解除预锁定失败;
当发送解除预锁定报文后,在设定的解除预锁定成功报文返回时间段阈值t3没有收到某个待锁定节点发送回的解除预锁定成功报文时,判断为该待锁定节点解除预锁定成功;
当待锁定节点解除预锁定失败时,重新向该待锁定节点发送解除预锁定报文,直至该待锁定节点解除预锁定成功。


5.按照权利要求1所述的一种分布式系统多节点锁定方法,其特征在于:步骤四中所述当有待锁定节点锁定失败时,向各个锁定成功的待锁定节点发送解除锁定报文时,还对解除锁定是否成功进行判断,具体的判断方法为:
当发送解除锁定报文后,在设定的解除锁定成功报文返回时间段阈值t4内没有收到某个待锁定节点发送回的解除锁定成功报文时,判断为该待锁定节点解除锁定失败;
当发送解除锁定报文后,在设定的解除锁定成功报文返回时间段阈值t4没有收到某个待锁定节点发送回的解除锁定成功报文时,判断为该待锁定节点解除锁定成功;
当待锁定节点解除锁定失败时,重新向该待锁定节点发送解除锁定报文,直至该待锁定节点解除锁定成功。


6.按照权利要求1~5中任一权利要求所述的一种分布式系统多节点锁定方法,其特征在于:步骤一中还为分布式系统中所有待锁定节点分配优先级,或使用已有特征表征优先级;所述待锁定节点的状态包括空闲、预锁定和锁定三种。


7.按照权利要求6所述的一种分布式系统多节点锁定方法,其...

【专利技术属性】
技术研发人员:蔡国凤
申请(专利权)人:蔡国凤
类型:发明
国别省市:江苏;32

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

1