CN107181637B - 一种心跳信息发送方法、装置及心跳发送节点 - Google Patents

一种心跳信息发送方法、装置及心跳发送节点 Download PDF

Info

Publication number
CN107181637B
CN107181637B CN201610140075.9A CN201610140075A CN107181637B CN 107181637 B CN107181637 B CN 107181637B CN 201610140075 A CN201610140075 A CN 201610140075A CN 107181637 B CN107181637 B CN 107181637B
Authority
CN
China
Prior art keywords
heartbeat
data block
node
sending
block group
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.)
Active
Application number
CN201610140075.9A
Other languages
English (en)
Other versions
CN107181637A (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.)
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 CN201610140075.9A priority Critical patent/CN107181637B/zh
Priority to EP17762546.4A priority patent/EP3419220B1/en
Priority to EP22216133.3A priority patent/EP4221130A1/en
Priority to PCT/CN2017/076189 priority patent/WO2017152860A1/zh
Publication of CN107181637A publication Critical patent/CN107181637A/zh
Priority to US16/127,863 priority patent/US11310130B2/en
Application granted granted Critical
Publication of CN107181637B publication Critical patent/CN107181637B/zh
Priority to US17/711,870 priority patent/US11736371B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/026Details of "hello" or keep-alive messages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/255Maintenance or indexing of mapping tables
    • H04L61/2553Binding renewal aspects, e.g. using keep-alive messages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/143Termination or inactivation of sessions, e.g. event-controlled end of session
    • H04L67/145Termination or inactivation of sessions, e.g. event-controlled end of session avoiding end of session, e.g. keep-alive, heartbeats, resumption message or wake-up for inactive or interrupted session
    • 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/55Push-based network services
    • 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
    • H04L67/5683Storage of data provided by user terminals, i.e. reverse caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/20Manipulation of established connections
    • H04W76/25Maintenance of established connections

Abstract

本发明提供一种心跳信息发送方法、装置及心跳发送节点,所述方法包括:确定所述心跳发送节点中的至少两个主数据块对应的至少两个从数据块所在的心跳接收节点;在所述心跳接收节点为同一个节点时,向所述心跳接收节点发送所述心跳发送节点的心跳信息,其中,所述心跳发送节点的心跳信息为将所述至少两个主数据块各自的心跳信息合并后得到的心跳信息。

Description

一种心跳信息发送方法、装置及心跳发送节点
技术领域
本发明涉及通信技术领域,尤其涉及一种心跳信息发送方法、装置及心跳发送节点。
背景技术
目前,提高分布式数据库系统的可用性的一般方法为数据备份。为了保证数据库的一致性,数据备份必须是一致性备份。一致性备份需要采用一致性算法。常见的一致性算法包括Paxos算法,Raft算法等。进一步,在分布式数据库系统中,为了提高一致性备份过程中数据复制的速度和吞吐量,在进行数据备份时,通常将数据分成若干个数据块进行复制。
在数据块采用一致性算法进行复制备份的过程中,为了实现故障的自动恢复与容错,参与一致性算法的各个节点需要知道彼此数据块的状态信息。为此,节点之间需要发送心跳信息来通知自己的数据块的状态信息。
如图1所示,现有技术中,主数据块leader会向主数据块对应的从数据块发送心跳信息,当节点中的存在主数据块时,该节点会将节点内各个数据块的心跳信息合并,发送给所有与节点内的数据块位于同一数据块组的数据块所在的其他节点,具有相同数据块类型的节点是指存储有相同数据的数据块所在的节点。
然而,在系统中,节点会向所有包含相同数据块的其他节点发送心跳信息,由于节点中除了主数据块leader外,还包括不是leader的数据块,因此,对心跳信息进行合并,会导致节点发送大量无用的心跳信息。如图2所示,节点1中的数据块1为leader,数据块2不是leader,由于节点1和节点3都包括数据块2,则节点1会向节点3发送心跳信息,但由于节点1中的数据块2并不是leader,因此这个心跳信息就是无用的心跳信息,无用的心跳信息会导致心跳信息的数量增加,影响系统性能。
发明内容
本发明实施例提供一种心跳信息发送方法、装置及心跳发送节点,用于避免节点发送无用的心跳信息,从而减少心跳信息数量,防止网络拥塞。
本发明实施例第一方面提供了一种心跳信息发送方法,所述方法由心跳发送节点执行,所述方法包括:
确定所述心跳发送节点中的至少两个主数据块对应的至少两个从数据块所在的心跳接收节点;
在所述心跳接收节点为同一个节点时,向所述心跳接收节点发送所述心跳发送节点的心跳信息,其中,所述心跳发送节点的心跳信息为将所述至少两个主数据块各自的心跳信息合并后得到的心跳信息。
本发明实施例中,通过确定心跳发送节点中的至少两个主数据块对应的至少两个从数据块所在的心跳接收点,然后,在所述心跳接收节点为同一个节点时,向心跳接收节点发送至少两个主数据块各自的心跳信息合并后得到的心跳信息,避免了心跳发送节点将节点内各个数据块(包括主数据块和从数据块)的心跳信息合并,并发送给所有与节点内的数据块位于同一数据块组的数据块所在的其他节点,从而减少心跳信息数量,防止网络拥塞。
结合第一方面,在第一方面的第一种可能的实现方式中,所述心跳发送节点的心跳信息携带:用于标识所述至少两个主数据块各自所在的数据块组的数据块组标识,所述数据块组标识用于指示所述数据块组各自的主数据块位于所述心跳发送节点。
本发明实施例第二方面提供了一种心跳信息发送方法,所述方法由心跳发送节点执行,所述方法包括:确定所述心跳发送节点中的当前主数据块对应的从数据块所在的心跳接收节点,所述当前主数据块所在的数据块组包括所述从数据块;向所述心跳接收节点发送所述心跳发送节点的心跳信息,所述心跳发送节点的心跳信息携带:用于标识所述数据块组的数据块组标识,所述数据块组标识用于指示所述数据块组中的主数据块位于所述心跳发送节点。
现有技术中,心跳发送节点发送的心跳信息携带有心跳发送节点的节点标识,心跳接收节点中具有心跳接收节点中的从数据块对应的主数据块所在节点的节点标识。在心跳接收节点接收到的心跳信息时,如果心跳信息携带的节点标识与从数据块对应的节点标识相同,则从数据块接收该心跳信息,并对心跳信息进行响应。如果从数据块所在的数据块组中的主数据块发生改变,即,另一心跳发送节点中的位于数据块组内的数据块成为该数据块组的主数据块,但是,心跳接收节点中的从数据块对应的节点标识没有改变,则在另一心跳发送节点向心跳接收节点发送心跳信息时,由于心跳信息中携带的另一心跳发送节点的节点标识与从数据块对应的节点标识不同,则从数据块会忽略该心跳信息,导致从数据块相对于另一心跳发送节点处于孤立状态。
本申请实施例中,通过在心跳发送节点的心跳信息中携带:用于标识所述至少两个主数据块各自所在的数据块组的数据块组标识,使得心跳接收节点在接收到携带有数据块组标识的心跳信息后,将从数据块对应的节点标识更新为用于标识所述心跳发送节点的标识,从而防止从数据块相对于心跳发送节点处于孤立状态。
结合第二方面,在第二方面的第一种可能的实现方式中,所述向所述心跳接收节点发送所述心跳发送节点的心跳信息,包括:在所述心跳接收节点为没有对所述当前主数据块的选举请求进行响应的节点时,向所述心跳接收节点发送所述心跳发送节点的心跳信息。本发明实施例中,在心跳接收节点为没有对所述当前主数据块的选举请求进行响应的节点时,向心跳接收节点发送心跳信息,减少了心跳信息的数量。
本发明实施例第三方面提供了一种心跳信息处理方法,所述方法由心跳接收节点执行,所述方法包括:接收来自心跳发送节点的心跳信息,所述心跳发送节点的心跳信息携带用于标识数据块组的数据块组标识;确定所述心跳接收节点中位于所述数据块组中的从数据块;将所述从数据块对应的节点标识更新为用于标识所述心跳发送节点的标识,所述节点标识用于标识所述数据块组中的主数据块所在的节点。
本发明实施例中,心跳接收节点在接收到携带有用于标识数据块组的数据块组标识的心跳信息后,确定心跳接收节点中位于数据块组中的从数据块,然后,将从数据块对应的节点标识更新为用于标识所述心跳发送节点的标识,从而防止从数据块相对于心跳发送节点处于孤立状态。
本发明实施例第四方面提供了一种心跳信息发送装置,包括:
确定单元,用于确定所述心跳发送节点中的至少两个主数据块对应的至少两个从数据块所在的心跳接收节点;
发送单元,用于在所述心跳接收节点为同一个节点时,向所述心跳接收节点发送所述心跳发送节点的心跳信息,其中,所述心跳发送节点的心跳信息为将所述至少两个主数据块各自的心跳信息合并后得到的心跳信息。
结合第四方面,在第四方面的第一种可能的实现方式中,所述心跳发送节点的心跳信息携带:用于标识所述至少两个主数据块各自所在的数据块组的数据块组标识,所述数据块组标识用于指示所述数据块组各自的主数据块位于所述心跳发送节点。
本发明实施例第五方面提供了一种心跳信息发送装置,包括:
确定单元,用于确定所述心跳发送节点中的当前主数据块对应的从数据块所在的心跳接收节点,所述当前主数据块所在的数据块组包括所述从数据块;
发送单元,用于向所述心跳接收节点发送所述心跳发送节点的心跳信息,所述心跳发送节点的心跳信息携带:用于标识所述数据块组的数据块组标识,所述数据块组标识用于指示所述数据块组中的主数据块位于所述心跳发送节点。
结合第五方面,在第五方面的第一种可能的实现方式中,所述发送单元用于:
在所述心跳接收节点为没有对所述当前主数据块的选举请求进行响应的节点时,向所述心跳接收节点发送所述心跳发送节点的心跳信息。
本发明实施例第六方面提供了一种心跳信息处理装置,包括:
接收单元,用于接收来自心跳发送节点的心跳信息,所述心跳发送节点的心跳信息携带用于标识数据块组的数据块组标识;
确定单元,用于确定所述心跳接收节点中位于所述数据块组中的从数据块;
更新单元,用于将所述从数据块对应的节点标识更新为用于标识所述心跳发送节点的标识,所述节点标识用于标识所述数据块组中的主数据块所在的节点。
本发明实施例第七方面提供了一种心跳发送节点,包括:处理器,发送器和通信总线;其中,所述处理器和所述发送器通过所述通信总线完成相互间的通信;
所述处理器用于:确定所述心跳发送节点中的至少两个主数据块对应的至少两个从数据块所在的心跳接收节点;
所述发送器用于:在所述心跳接收节点为同一个节点时,向所述心跳接收节点发送所述心跳发送节点的心跳信息,其中,所述心跳发送节点的心跳信息为将所述至少两个主数据块各自的心跳信息合并后得到的心跳信息。
结合第七方面,在第七方面的第一种可能的实现方式中,所述心跳发送节点的心跳信息携带:用于标识所述至少两个主数据块各自所在的数据块组的数据块组标识,所述数据块组标识用于指示所述数据块组各自的主数据块位于所述心跳发送节点。
本发明实施例第八方面提供了一种心跳发送节点,包括:处理器,发送器和通信总线;其中,所述处理器和所述发送器通过所述通信总线完成相互间的通信;
所述处理器用于:确定所述心跳发送节点中的当前主数据块对应的从数据块所在的心跳接收节点,所述当前主数据块所在的数据块组包括所述从数据块;
所述发送器用于:向所述心跳接收节点发送所述心跳发送节点的心跳信息,所述心跳发送节点的心跳信息携带:用于标识所述数据块组的数据块组标识,所述数据块组标识用于指示所述数据块组中的主数据块位于所述心跳发送节点。
结合第八方面,在第八方面的第一种可能的实现方式中,所述发送器用于:
在所述心跳接收节点为没有对所述当前主数据块的选举请求进行响应的节点时,向所述心跳接收节点发送所述心跳发送节点的心跳信息。
本发明实施例第九方面提供了一种心跳发送节点,包括:处理器,接收器和通信总线;其中,所述处理器和所述接收器通过所述通信总线完成相互间的通信;
所述接收器用于:接收来自心跳发送节点的心跳信息,所述心跳发送节点的心跳信息携带用于标识数据块组的数据块组标识;
所述处理器用于:确定所述心跳接收节点中位于所述数据块组中的从数据块;将所述从数据块对应的节点标识更新为用于标识所述心跳发送节点的标识,所述节点标识用于标识所述数据块组中的主数据块所在的节点。
本发明实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:
本发明实施例中,通过确定心跳发送节点中的至少两个主数据块对应的至少两个从数据块所在的心跳接收点,然后,在所述心跳接收节点为同一个节点时,向心跳接收节点发送至少两个主数据块各自的心跳信息合并后得到的心跳信息,避免了心跳发送节点将节点内各个数据块(包括主数据块和从数据块)的心跳信息合并,并发送给所有与节点内的数据块位于同一数据块组的数据块所在的其他节点,从而减少心跳信息数量,防止网络拥塞。
附图说明
图1为心跳信息合并的示意图;
图2为节点发送的无用的心跳信息的示意图;
图3为本发明实施例适用的分布式数据库系统的示意图;
图4为本发明实施例中的一种心跳信息发送方法的流程图;
图5为分布式数据库系统中主数据模块发生改变的示意图;
图6为本发明实施例中的另一心跳信息发送方法的流程图;
图7为本发明实施例中的一种心跳信息处理方法的流程图;
图8为本发明实施例中心跳发送装置的功能模块示意图;
图9为本发明实施例中心跳发送节点的硬件结构示意图;
图10为本发明实施例中另一心跳发送装置的功能模块示意图;
图11为本发明实施例中另一心跳发送节点的硬件结构示意图;
图12为本发明实施例中心跳接收装置的功能模块示意图;
图13为本发明实施例中心跳接收节点的硬件结构示意图。
具体实施方式
本发明实施例提供一种心跳信息发送方法、装置及心跳发送节点,用以解决分布式数据库系统中,节点发送无用的心跳信息的技术问题。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
请参考图3,为本发明实施例适用的分布式数据库系统的示意图,分布式数据库系统包含多个节点,每个节点包括至少一个数据块。在背景技术中已经提及将数据分成若干个数据块进行复制,如:将节点1中的数据分为数据块1和数据块2,然后,对数据块1进行复制,并对数据块2进行复制。分布式数据库系统可以具有多个数据块组,每个数据快组具有唯一的数据块组标识,和唯一的主数据块Leader,不同数据块组的主数据块可能位于分布式数据库系统中的同一节点,也可能位于不同节点。
一致性备份需要采用一致性算法,以Raft算法为例,Raft算法会从一个数据块组中选举出一个唯一的主数据块,该数据块组中的其他数据块为从数据块。主数据块负责管理日志,所有对日志的添加和状态变化操作都通过主数据块完成。在分布式数据库系统中,参与一致性算法的各个节点需要知道彼此数据块的状态信息,为此,主数据块需要向从数据块发送心跳信息来通知自己所在节点的状态信息。
下面对本发明实施例提供的心跳信息发送方法进行详细说明。
请参考图4,为本发明实施例提供的一种心跳信息发送方法的流程图。该方法包括以下内容:
步骤40:确定所述心跳发送节点中的至少两个主数据块对应的至少两个从数据块所在的心跳接收节点。
在分布式数据库系统中,心跳发送节点中维护有至少两个主数据块的集合leaderraftnode,和心跳接收节点的集合
Figure BDA0000939513300000081
其中,nodel表示主数据块l的从数据块所在节点的集合。也就是说,如果心跳发送节点上有至少两个主数据块,则心跳接收节点的集合Sheartbeatnode中包括心跳发送节点上的至少两个主数据块中的每个主数据块的从数据块所在的节点的并集。
则在步骤40中,心跳发送节点可以通过查询集合Sheartbeatnode中包括的节点来确定心跳接收节点,即,心跳发送节点将集合Sheartbeatnode中包括的节点确定为所述心跳接收节点。
步骤41:在所述心跳接收节点为同一个节点时,向所述心跳接收节点发送所述心跳发送节点的心跳信息,其中,所述心跳发送节点的心跳信息为将所述至少两个主数据块各自的心跳信息合并后得到的心跳信息。
在分布式数据库系统中,在心跳接收节点为同一个节点时,也就是说,在至少两个从数据块位于同一个节点上时,心跳发送节点将至少两个主数据块各自的心跳信息进行合并,得到合并后的心跳信息,并将合并后的心跳信息发送至心跳信息节点,以减少心跳信息的数量。
需要说明的是,心跳发送节点上除主数据块外,还可以包括位于其他数据块组的从数据块。在分布式数据库系统中,由于节点发生故障等原因,心跳发送节点中的数据块的状态会发生改变,一种可能的情况为:心跳发送节点中的主数据块变成从数据块,另一种可能的情况为:心跳发送节点中的从数据块变成主数据块。在心跳发送节点中的数据块状态发生改变后,心跳发送节点会对节点上集合Sheartbeatnode进行更新。更新的步骤如下:
第一步,确定心跳发送节点上的所有主数据块。
第二步:确定所有主数据块的所有从数据块。
第三步:确定所有从数据块所在的节点;
第四步:根据所有从数据块所在的节点,对集合Sheartbeatnode的心跳接收节点进行更新。
现有技术中,对心跳信息进行合并后,可能会导致节点中的从数据块被主数据块孤立。举例来讲:如图5中的a所示,节点1中的数据块1和数据块2都为主数据块,节点2中包括数据块1和数据块2,通过合并数据块1和主数据块2心跳信息,节点1只需要向节点2发送一个心跳信息,该心跳信息中携带节点1的节点标识,节点2中的数据块1对应的节点标识为节点1的节点标识。如果节点2接收到节点1发送的心跳信息,则从数据块1会接收该心跳信息,并对心跳信息进行响应。
如图5中的b所示,在节点1中的数据块1的状态从主数据块变成从数据块,节点3中的数据块1变为所在数据块组的主数据块后,如果节点1继续向节点2发送心跳信息,由于节点2中的数据块1对应的节点标识仍然为节点1的节点标识,则节点2接到节点1发送的心跳信息时,节点2中的数据块1会继续将节点1作为主数据块所在的节点;而节点2接收到节点3发送的心跳信息(心跳信息中携带节点3的节点标识)时,由于节点3的节点标识与节点2中的数据块1对应的节点标识不同,则节点2中的数据块1会忽略节点3发送的心跳信息,使得节点2中的数据块1相对于节点3中的主数据块处于孤立状态。
为了解决上述技术问题,本发明实施例提供一种心跳信息发送方法,如图6所示,该方法包括以下内容:
步骤60:确定所述心跳发送节点中的当前主数据块对应的从数据块所在的心跳接收节点,所述当前主数据块所在的数据块组包括所述从数据块。
在分布式数据库系统中,对于参与Raft算法的每个数据块,维护一个组节点集合noderaftnode,noderaftnode中包括系统中具有相同数据块组标识的所有数据块所在的节点,noderaftnode中每个元素的格式为元组(raftgroupID,nodeID),其中,raftgroupID为数据块组标识,nodeID为数据块所在的节点的节点标识。
如果某个数据块被选举为当前主数据块,在确定心跳接收节点时,可以根据当前主数据块所在的数据块组的数据块组标识,查询对应的noderaftnode,并将noderaftnode中的节点确定为当前主数据块对应的从数据块所在的心跳接收节点。
步骤61:向所述心跳接收节点发送所述心跳发送节点的心跳信息,所述心跳发送节点的心跳信息携带:用于标识所述数据块组的数据块组标识,所述数据块组标识用于指示所述数据块组中的主数据块位于所述心跳发送节点。
对于noderaftnode中的每个节点,心跳发送节点会维护一个leadermsgr集合,leadermsgr集合中元素的格式为元组(raftgroupID,leaderID),其中,raftgroupID为数据块组标识,leaderID为主数据块所在节点的节点标识。当心跳发送节点向noderaftnode中的节点发送心跳信息时,心跳信息中添加leadermsgr中的数据块主标识。
请参考图7,在心跳发送节点向心跳接收节点发送携带有数据块组标识的心跳信息后,心跳接收节点执行以下步骤:
步骤70:接收来自心跳发送节点的心跳信息,所述心跳发送节点的心跳信息携带用于标识数据块组的数据块组标识。
步骤71:确定所述心跳接收节点中位于所述数据块组中的从数据块。
对于参与Raft算法的每个数据块,具有所在数据块组的唯一的数据块组标识,因此,心跳接收节点根据心跳信息中携带的数据块组标识,确定出位于所述数据块组中的从数据块,该从数据块的数据块组标识与心跳信息中携带的数据块组标识相同。
步骤72:将所述从数据块对应的节点标识更新为用于标识所述心跳发送节点的标识,所述节点标识用于标识所述数据块组中的主数据块所在的节点。
在步骤72中,如果所述从数据对应的节点标识与所述心跳发送节点的标识不同,心跳接收节点将从数据对应的节点标识更新为所述心跳发送节点的标识,则接下来,在心跳接收节点接收到心跳发送节点发送的心跳信息时,由于更新后的从数据对应的节点标识与心跳信息中携带的节点标识相同,则从数据块能够接收该心跳信息,并对该心跳信息进行响应,从而反之心跳接收节点中的从数据块相对于主数据块处于孤立状态。
举例来讲,请继续参考图5中的b,在节点1中的数据块1的状态从主数据块变为从数据块,节点3中的数据块1变为所在数据块组的主数据块后,节点2中的数据块1对应的节点标识为节点1的节点标识。节点3在发送至节点2的心跳信息中携带用于标识数据块1所在数据块组的数据块组标识,节点2接收到节点3发送的心跳信息后,确定出节点2中位于所述数据块组的从数据块为数据块1,并将数据块1对应的节点标识更新为节点3的节点标识。
如果节点1继续向节点2发送心跳信息,由于节点2中数据块1对应的节点标识更新为节点3的节点标识,则节点2接到节点1发送的心跳信息时,节点2中的数据块1会忽略节点2发送的心跳信息,而节点2接收到节点3发送的心跳信息时,节点2中的数据块1会接收节点3发送的心跳信息,并对节点2发送的心跳信息进行响应,使得节点3中的数据块1的状态发生改变后,节点2中的数据块1相对于节点3不会处于孤立状态。
可选的,在所述心跳接收节点为没有对所述当前主数据块的选举请求进行响应的节点时,向所述心跳接收节点发送所述心跳发送节点的心跳信息。
首先,对Raft算法中主数据块的选举进行说明。
Raft算法中,任何一个数据块在任何一个时刻都处于三种状态之一:主数据块(Leader),从数据块(Follower),候选数据块(candidate)。Raft算法把时间分为连续的任期,每个任期开始时进行主数据块选举。选举时,候选数据块所在节点启动一个新的计时器,并向与候选数据块位于同一数据块组中的所有其它数据块所在节点发送RequestVoteRPC请求(选举请求),并等待节点响应,如果在计时器超时前,候选数据块所在节点接收到系统中多数节点返回的同意投票,则该数据块候选数据块成为主数据块。
在主数据块选举结束后,假设候选数据块成为当前主数据块,如果在选举的过程中,当前主数据块所在的心跳发送节点没有接收到心跳接收节点的同意投票,则心跳发送节点会向心跳接收节点发送携带有数据块组标识心跳信息;如果在选举过程中,心跳发送节点接收到了心跳接收节点返回的同意投票,则心跳发送节点可以不向心跳接收节点发送携带有数据块组标识心跳信息。
基于同一发明构思,本发明实施例还提供一种心跳信息发送装置,如图8所示,包括:
确定单元80,用于确定所述心跳发送节点中的至少两个主数据块对应的至少两个从数据块所在的心跳接收节点;
发送单元81,用于在所述心跳接收节点为同一个节点时,向所述心跳接收节点发送所述心跳发送节点的心跳信息,其中,所述心跳发送节点的心跳信息为将所述至少两个主数据块各自的心跳信息合并后得到的心跳信息。
可选的,所述心跳发送节点的心跳信息携带:用于标识所述至少两个主数据块各自所在的数据块组的数据块组标识,所述数据块组标识用于指示所述数据块组各自的主数据块位于所述心跳发送节点。
前述图4实施例中的心跳信息发送方法中的各种变化方式和具体实例同样适用于本实施例的心跳信息发送装置,通过前述对心跳信息发送方法的详细描述,本领域技术人员可以清楚的知道本实施例中心跳信息发送装置的实施方法,所以为了说明书的简洁,在此不再详述。
基于同一发明构思,本发明实施例还提供一种心跳发送节点,如图9所示,包括:处理器402,发送器401和通信总线400;其中,所述处理器402和所述发送器401通过所述通信总线400完成相互间的通信;
所述处理器402用于:确定所述心跳发送节点中的至少两个主数据块对应的至少两个从数据块所在的心跳接收节点;
所述发送器401用于:在所述心跳接收节点为同一个节点时,向所述心跳接收节点发送所述心跳发送节点的心跳信息,其中,所述心跳发送节点的心跳信息为将所述至少两个主数据块各自的心跳信息合并后得到的心跳信息。
可选的,所述心跳发送节点的心跳信息携带:用于标识所述至少两个主数据块各自所在的数据块组的数据块组标识,所述数据块组标识用于指示所述数据块组各自的主数据块位于所述心跳发送节点。
进一步,在图9中,通信总线400可以包括任意数量的互联的总线和桥,通信总线400将包括由处理器402代表的一个或多个处理器和存储器404代表的存储器的各种电路连接在一起。通信总线400还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口405在通信总线400和发送器401之间提供接口。发送器401可以是收发机,提供用于在传输介质上与各种其他装置通信的单元。
处理器402负责管理通信总线400和通常的处理,而存储器404可以被用于存储处理器402在执行操作时所使用的数据。
前述图4实施例中的心跳信息发送方法中的各种变化方式和具体实例同样适用于本实施例的心跳信息发送装置,通过前述对心跳信息发送方法的详细描述,本领域技术人员可以清楚的知道本实施例中心跳信息发送装置的实施方法,所以为了说明书的简洁,在此不再详述。
基于同一发明构思,本发明实施例还提供一种心跳信息发送装置,如图10所示,包括:
确定单元101,用于确定所述心跳发送节点中的当前主数据块对应的从数据块所在的心跳接收节点,所述当前主数据块所在的数据块组包括所述从数据块;
发送单元102,用于向所述心跳接收节点发送所述心跳发送节点的心跳信息,所述心跳发送节点的心跳信息携带:用于标识所述数据块组的数据块组标识,所述数据块组标识用于指示所述数据块组中的主数据块位于所述心跳发送节点。
可选的,所述发送单元102用于:
在所述心跳接收节点为没有对所述当前主数据块的选举请求进行响应的节点时,向所述心跳接收节点发送所述心跳发送节点的心跳信息。
前述图6实施例中的心跳信息发送方法中的各种变化方式和具体实例同样适用于本实施例的心跳信息发送装置,通过前述对心跳信息发送方法的详细描述,本领域技术人员可以清楚的知道本实施例中心跳信息发送装置的实施方法,所以为了说明书的简洁,在此不再详述。
基于同一发明构思,本发明实施例还提供一种心跳发送节点,如图11所示,包括:处理器602,发送器601和通信总线600;其中,所述处理器602和所述发送器601通过所述通信总线600完成相互间的通信;
所述处理器602用于:确定所述心跳发送节点中的当前主数据块对应的从数据块所在的心跳接收节点,所述当前主数据块所在的数据块组包括所述从数据块;
所述发送器601用于:向所述心跳接收节点发送所述心跳发送节点的心跳信息,所述心跳发送节点的心跳信息携带:用于标识所述数据块组的数据块组标识,所述数据块组标识用于指示所述数据块组中的主数据块位于所述心跳发送节点。
可选的,所述发送器601用于:
在所述心跳接收节点为没有对所述当前主数据块的选举请求进行响应的节点时,向所述心跳接收节点发送所述心跳发送节点的心跳信息。
进一步,在图11中,通信总线600可以包括任意数量的互联的总线和桥,通信总线600将包括由处理器602代表的一个或多个处理器和存储器604代表的存储器的各种电路连接在一起。通信总线600还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口605在通信总线600和发送器601之间提供接口。发送器601可以是收发机,提供用于在传输介质上与各种其他装置通信的单元。
处理器602负责管理通信总线600和通常的处理,而存储器604可以被用于存储处理器602在执行操作时所使用的数据。
前述图6实施例中的心跳信息发送方法中的各种变化方式和具体实例同样适用于本实施例的心跳信息发送装置,通过前述对心跳信息发送方法的详细描述,本领域技术人员可以清楚的知道本实施例中心跳信息发送装置的实施方法,所以为了说明书的简洁,在此不再详述。
基于同一发明构思,本发明实施例还提供一种心跳信息处理装置,如图12所示,包括:
接收单元121,用于接收来自心跳发送节点的心跳信息,所述心跳发送节点的心跳信息携带用于标识数据块组的数据块组标识;
确定单元122,用于确定所述心跳接收节点中位于所述数据块组中的从数据块;
更新单元123,用于将所述从数据块对应的节点标识更新为用于标识所述心跳发送节点的标识,所述节点标识用于标识所述数据块组中的主数据块所在的节点。
前述图7实施例中的心跳信息处理方法中的各种变化方式和具体实例同样适用于本实施例的心跳信息处理装置,通过前述对心跳信息处理方法的详细描述,本领域技术人员可以清楚的知道本实施例中心跳信息处理装置的实施方法,所以为了说明书的简洁,在此不再详述。
基于同一发明构思,本发明实施例还提供一种心跳接收节点,如图13所示,包括:处理器802,接收器801和通信总线800;其中,所述处理器802和所述接收器801通过所述通信总线800完成相互间的通信;
所述接收器801用于:接收来自心跳发送节点的心跳信息,所述心跳发送节点的心跳信息携带用于标识数据块组的数据块组标识;
所述处理器802用于:确定所述心跳接收节点中位于所述数据块组中的从数据块;将所述从数据块对应的节点标识更新为用于标识所述心跳发送节点的标识,所述节点标识用于标识所述数据块组中的主数据块所在的节点。
进一步,在图13中,通信总线800可以包括任意数量的互联的总线和桥,通信总线800将包括由处理器802代表的一个或多个处理器和存储器804代表的存储器的各种电路连接在一起。通信总线800还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口805在通信总线800和接收器801之间提供接口。接收器801可以是收发机,提供用于在传输介质上与各种其他装置通信的单元。
处理器802负责管理通信总线800和通常的处理,而存储器804可以被用于存储处理器802在执行操作时所使用的数据。
前述图7实施例中的心跳信息处理方法中的各种变化方式和具体实例同样适用于本实施例的心跳信息处理装置,通过前述对心跳信息处理方法的详细描述,本领域技术人员可以清楚的知道本实施例中心跳信息处理装置的实施方法,所以为了说明书的简洁,在此不再详述。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (15)

1.一种心跳信息发送方法,所述方法由心跳发送节点执行,其特征在于,所述方法包括:
确定所述心跳发送节点中的至少两个主数据块对应的至少两个从数据块所在的心跳接收节点;
在所述心跳接收节点为同一个节点时,向所述心跳接收节点发送所述心跳发送节点的心跳信息,其中,所述心跳发送节点的心跳信息为将所述至少两个主数据块各自的心跳信息合并后得到的心跳信息。
2.如权利要求1所述的方法,其特征在于,所述心跳发送节点的心跳信息携带:用于标识所述至少两个主数据块各自所在的数据块组的数据块组标识,所述数据块组标识用于指示所述数据块组各自的主数据块位于所述心跳发送节点。
3.一种心跳信息发送方法,所述方法由心跳发送节点执行,其特征在于,所述方法包括:
确定所述心跳发送节点中的当前主数据块对应的从数据块所在的心跳接收节点,所述当前主数据块所在的数据块组包括所述从数据块;
向所述心跳接收节点发送所述心跳发送节点的心跳信息,所述心跳发送节点的心跳信息携带:用于标识所述数据块组的数据块组标识,所述数据块组标识用于指示所述数据块组中的主数据块位于所述心跳发送节点。
4.如权利要求3所述的方法,其特征在于,所述向所述心跳接收节点发送所述心跳发送节点的心跳信息,包括:
在所述心跳接收节点为没有对所述当前主数据块的选举请求进行响应的节点时,向所述心跳接收节点发送所述心跳发送节点的心跳信息。
5.一种心跳信息处理方法,所述方法由心跳接收节点执行,其特征在于,所述方法包括:
接收来自心跳发送节点的心跳信息,所述心跳发送节点的心跳信息携带用于标识数据块组的数据块组标识;
确定所述心跳接收节点中位于所述数据块组中的从数据块;
将所述从数据块对应的节点标识更新为用于标识所述心跳发送节点的标识,所述节点标识用于标识所述数据块组中的主数据块所在的节点。
6.一种心跳信息发送装置,其特征在于,包括:
确定单元,用于确定所述心跳发送节点中的至少两个主数据块对应的至少两个从数据块所在的心跳接收节点;
发送单元,用于在所述确定单元确定的所述心跳接收节点为同一个节点时,向所述心跳接收节点发送所述心跳发送节点的心跳信息,其中,所述心跳发送节点的心跳信息为将所述至少两个主数据块各自的心跳信息合并后得到的心跳信息。
7.如权利要求6所述的装置,其特征在于,所述心跳发送节点的心跳信息携带:用于标识所述至少两个主数据块各自所在的数据块组的数据块组标识,所述数据块组标识用于指示所述数据块组各自的主数据块位于所述心跳发送节点。
8.一种心跳信息发送装置,其特征在于,包括:
确定单元,用于确定所述心跳发送节点中的当前主数据块对应的从数据块所在的心跳接收节点,所述当前主数据块所在的数据块组包括所述从数据块;
发送单元,用于向所述确定单元确定的所述心跳接收节点发送所述心跳发送节点的心跳信息,所述心跳发送节点的心跳信息携带:用于标识所述数据块组的数据块组标识,所述数据块组标识用于指示所述数据块组中的主数据块位于所述心跳发送节点。
9.如权利要求8所述的装置,其特征在于,所述发送单元用于:
在所述心跳接收节点为没有对所述当前主数据块的选举请求进行响应的节点时,向所述心跳接收节点发送所述心跳发送节点的心跳信息。
10.一种心跳信息处理装置,其特征在于,包括:
接收单元,用于接收来自心跳发送节点的心跳信息,所述心跳发送节点的心跳信息携带用于标识数据块组的数据块组标识;
确定单元,用于确定所述心跳接收节点中位于所述接收单元接收的所述数据块组中的从数据块;
更新单元,用于将所述确定单元确定的所述从数据块对应的节点标识更新为用于标识所述心跳发送节点的标识,所述节点标识用于标识所述数据块组中的主数据块所在的节点。
11.一种心跳发送节点,其特征在于,包括:处理器,发送器和通信总线;其中,所述处理器和所述发送器通过所述通信总线完成相互间的通信;
所述处理器用于:确定所述心跳发送节点中的至少两个主数据块对应的至少两个从数据块所在的心跳接收节点;
所述发送器用于:在所述心跳接收节点为同一个节点时,向所述心跳接收节点发送所述心跳发送节点的心跳信息,其中,所述心跳发送节点的心跳信息为将所述至少两个主数据块各自的心跳信息合并后得到的心跳信息。
12.如权利要求11所述的心跳发送节点,其特征在于,所述心跳发送节点的心跳信息携带:用于标识所述至少两个主数据块各自所在的数据块组的数据块组标识,所述数据块组标识用于指示所述数据块组各自的主数据块位于所述心跳发送节点。
13.一种心跳发送节点,其特征在于,包括:处理器,发送器和通信总线;其中,所述处理器和所述发送器通过所述通信总线完成相互间的通信;
所述处理器用于:确定所述心跳发送节点中的当前主数据块对应的从数据块所在的心跳接收节点,所述当前主数据块所在的数据块组包括所述从数据块;
所述发送器用于:向所述心跳接收节点发送所述心跳发送节点的心跳信息,所述心跳发送节点的心跳信息携带:用于标识所述数据块组的数据块组标识,所述数据块组标识用于指示所述数据块组中的主数据块位于所述心跳发送节点。
14.如权利要求13所述的心跳发送节点,其特征在于,所述发送器用于:
在所述心跳接收节点为没有对所述当前主数据块的选举请求进行响应的节点时,向所述心跳接收节点发送所述心跳发送节点的心跳信息。
15.一种心跳接收节点,其特征在于,包括:处理器,接收器和通信总线;其中,所述处理器和所述接收器通过所述通信总线完成相互间的通信;
所述接收器用于:接收来自心跳发送节点的心跳信息,所述心跳发送节点的心跳信息携带用于标识数据块组的数据块组标识;
所述处理器用于:确定所述心跳接收节点中位于所述数据块组中的从数据块;将所述从数据块对应的节点标识更新为用于标识所述心跳发送节点的标识,所述节点标识用于标识所述数据块组中的主数据块所在的节点。
CN201610140075.9A 2016-03-11 2016-03-11 一种心跳信息发送方法、装置及心跳发送节点 Active CN107181637B (zh)

Priority Applications (6)

Application Number Priority Date Filing Date Title
CN201610140075.9A CN107181637B (zh) 2016-03-11 2016-03-11 一种心跳信息发送方法、装置及心跳发送节点
EP17762546.4A EP3419220B1 (en) 2016-03-11 2017-03-09 Heartbeat information sending method and device, and heartbeat sending node
EP22216133.3A EP4221130A1 (en) 2016-03-11 2017-03-09 Heartbeat information sending method and apparatus, and heartbeat sending node
PCT/CN2017/076189 WO2017152860A1 (zh) 2016-03-11 2017-03-09 一种心跳信息发送方法、装置及心跳发送节点
US16/127,863 US11310130B2 (en) 2016-03-11 2018-09-11 Heartbeat information sending method and apparatus, and heartbeat sending node
US17/711,870 US11736371B2 (en) 2016-03-11 2022-04-01 Heartbeat information sending method and apparatus, and heartbeat sending node

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610140075.9A CN107181637B (zh) 2016-03-11 2016-03-11 一种心跳信息发送方法、装置及心跳发送节点

Publications (2)

Publication Number Publication Date
CN107181637A CN107181637A (zh) 2017-09-19
CN107181637B true CN107181637B (zh) 2021-01-29

Family

ID=59789004

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610140075.9A Active CN107181637B (zh) 2016-03-11 2016-03-11 一种心跳信息发送方法、装置及心跳发送节点

Country Status (4)

Country Link
US (2) US11310130B2 (zh)
EP (2) EP3419220B1 (zh)
CN (1) CN107181637B (zh)
WO (1) WO2017152860A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107678918B (zh) * 2017-09-26 2021-06-29 郑州云海信息技术有限公司 一种分布式文件系统的osd心跳机制设置方法及装置
CN108111630B (zh) * 2018-01-22 2021-11-02 北京奇艺世纪科技有限公司 一种Zookeeper集群系统及其连接方法和系统
CN108650329A (zh) * 2018-05-22 2018-10-12 深圳市海亿康科技有限公司 一种多对等节点通信中主控设备选举方法
US20190363940A1 (en) * 2018-05-23 2019-11-28 Nokia Solutions And Networks Oy Methods, apparatuses and computer-readable mediums for group-based scalable network resource controller clusters
CN110365735A (zh) * 2019-05-28 2019-10-22 国网浙江省电力有限公司杭州供电公司 应用于分布式新能源系统的基于raft算法的区块链共识方法
US11088963B2 (en) * 2019-12-16 2021-08-10 Dell Products L.P. Automatic aggregated networking device backup link configuration system
CN114189421B (zh) * 2022-02-17 2022-05-31 江西农业大学 一种领导者节点选举方法、系统、存储介质及设备
CN114866395B (zh) * 2022-04-29 2024-03-22 中国建设银行股份有限公司 多组分布式一致性协议集群心跳通讯方法及装置
CN115250277B (zh) * 2022-08-09 2023-09-05 西安邮电大学 将共识机制适用于基于联盟链的边缘缓存系统的方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6871222B1 (en) * 1999-05-28 2005-03-22 Oracle International Corporation Quorumless cluster using disk-based messaging
US7653668B1 (en) * 2005-11-23 2010-01-26 Symantec Operating Corporation Fault tolerant multi-stage data replication with relaxed coherency guarantees
WO2010038149A3 (en) * 2008-10-03 2010-05-27 Telefonaktiebolaget L M Ericsson (Publ) Distributed master election

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001082678A2 (en) * 2000-05-02 2001-11-08 Sun Microsystems, Inc. Cluster membership monitor
US7111057B1 (en) * 2000-10-31 2006-09-19 Akamai Technologies, Inc. Method and system for purging content from a content delivery network
US7287180B1 (en) * 2003-03-20 2007-10-23 Info Value Computing, Inc. Hardware independent hierarchical cluster of heterogeneous media servers using a hierarchical command beat protocol to synchronize distributed parallel computing systems and employing a virtual dynamic network topology for distributed parallel computing system
US7760719B2 (en) * 2004-06-30 2010-07-20 Conexant Systems, Inc. Combined pipelined classification and address search method and apparatus for switching environments
US7813263B2 (en) * 2004-06-30 2010-10-12 Conexant Systems, Inc. Method and apparatus providing rapid end-to-end failover in a packet switched communications network
JP4696089B2 (ja) * 2007-03-30 2011-06-08 三菱電機インフォメーションシステムズ株式会社 分散ストレージシステム
CN101471845B (zh) * 2007-12-27 2011-06-15 中国移动通信集团公司 数据块副本数量调整方法及元数据服务器节点
WO2011009109A2 (en) * 2009-07-17 2011-01-20 Sensis Corporation System and method for aircraft navigation using signals transmitted in the dme transponder frequency range
CN102546686B (zh) * 2010-12-16 2015-10-07 中国移动通信集团公司 一种资源下载的方法、系统及应用服务器
US10346430B2 (en) * 2010-12-23 2019-07-09 Mongodb, Inc. System and method for determining consensus within a distributed database
US9805108B2 (en) * 2010-12-23 2017-10-31 Mongodb, Inc. Large distributed database clustering systems and methods
CN102137017B (zh) * 2011-03-17 2013-10-09 华为技术有限公司 用于虚拟网络单元的工作方法及装置
US8533231B2 (en) * 2011-08-12 2013-09-10 Nexenta Systems, Inc. Cloud storage system with distributed metadata
US10331801B2 (en) * 2011-09-23 2019-06-25 Open Invention Network, Llc System for live-migration and automated recovery of applications in a distributed system
CN103207867B (zh) * 2012-01-16 2019-04-26 联想(北京)有限公司 处理数据块的方法、发起恢复操作的方法和节点
US8719225B1 (en) * 2012-01-17 2014-05-06 Amazon Technologies, Inc. System and method for log conflict detection and resolution in a data store
US9852010B2 (en) * 2012-02-03 2017-12-26 Microsoft Technology Licensing, Llc Decoupling partitioning for scalability
US9774401B1 (en) * 2013-07-15 2017-09-26 Paul Borrill Entangled links, transactions and trees for distributed computing systems
CN103532784A (zh) * 2013-10-17 2014-01-22 中国联合网络通信集团有限公司 一种发送心跳消息的方法、系统、终端及网络设备
CN104679665A (zh) * 2013-12-02 2015-06-03 中兴通讯股份有限公司 一种实现分布式文件系统块存储的方法及系统
CN104092719B (zh) * 2013-12-17 2015-10-07 深圳市腾讯计算机系统有限公司 文件传输方法、装置及分布式集群文件系统
US9479457B2 (en) * 2014-03-31 2016-10-25 Juniper Networks, Inc. High-performance, scalable and drop-free data center switch fabric
US9495478B2 (en) * 2014-03-31 2016-11-15 Amazon Technologies, Inc. Namespace management in distributed storage systems
CN103945455A (zh) * 2014-04-25 2014-07-23 中国联合网络通信集团有限公司 一种实现自适应心跳数据包发送的方法及装置
US10133806B2 (en) * 2014-07-31 2018-11-20 Splunk Inc. Search result replication in a search head cluster
US10503698B2 (en) * 2014-07-31 2019-12-10 Splunk Inc. Configuration replication in a search head cluster
US10810863B2 (en) * 2014-10-15 2020-10-20 Avigilon Corporation Distributed security system over multiple sites
CA2982393C (en) * 2015-06-30 2022-07-19 Huawei Technologies Co., Ltd. Method for interaction between terminal and network device, and terminal
US10567499B1 (en) * 2015-12-02 2020-02-18 Amazon Technologies, Inc. Unsupervised round robin catch up algorithm
CN107046552B (zh) * 2016-02-05 2020-10-23 华为技术有限公司 基于心跳的数据同步装置、方法及分布式存储系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6871222B1 (en) * 1999-05-28 2005-03-22 Oracle International Corporation Quorumless cluster using disk-based messaging
US7653668B1 (en) * 2005-11-23 2010-01-26 Symantec Operating Corporation Fault tolerant multi-stage data replication with relaxed coherency guarantees
WO2010038149A3 (en) * 2008-10-03 2010-05-27 Telefonaktiebolaget L M Ericsson (Publ) Distributed master election

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
A Connection Management Protocol to Support Multimedia Traffic in Ad Hoc Wireless Networks with Directional Antenna;S. Bandyopadhyay,K. Hasuike;《2001 IEEE International Conference on Multimedia and Expo》;20010825;正文第2-4页 *
Failure detection and membership management in grid environments;Amit Jain ,R.K. Shyamasundar;《Fifth IEEE/ACM International Workshop on Grid Computing》;20041108;正文第5-9页 *

Also Published As

Publication number Publication date
US11310130B2 (en) 2022-04-19
EP4221130A1 (en) 2023-08-02
US20220224610A1 (en) 2022-07-14
WO2017152860A1 (zh) 2017-09-14
EP3419220B1 (en) 2023-01-18
CN107181637A (zh) 2017-09-19
EP3419220A1 (en) 2018-12-26
US11736371B2 (en) 2023-08-22
US20190028366A1 (en) 2019-01-24
EP3419220A4 (en) 2019-02-27

Similar Documents

Publication Publication Date Title
CN107181637B (zh) 一种心跳信息发送方法、装置及心跳发送节点
CN107295080B (zh) 应用于分布式服务器集群的数据存储方法和服务器
US10560315B2 (en) Method and device for processing failure in at least one distributed cluster, and system
CN108616566B (zh) raft分布式系统选主方法、相关设备及系统
CN108810100B (zh) 一种主节点的选举方法、装置及设备
US6532494B1 (en) Closed-loop node membership monitor for network clusters
US6889253B2 (en) Cluster resource action in clustered computer system incorporation prepare operation
WO2019104713A1 (zh) 一种机器学习方法、主节点、工作节点及系统
WO2023082800A1 (zh) 主节点选择方法、分布式数据库及存储介质
CN106230622B (zh) 一种集群实现方法及装置
CN104767794A (zh) 一种分布式系统中的节点选举方法及节点
CN110557416A (zh) 一种多节点协同打块的方法及系统
CN106533751B (zh) 一种sdn控制器集群合并方法及装置
CN104573428A (zh) 一种提高服务器集群资源有效性的方法及系统
CN113810216A (zh) 一种集群的故障切换方法、装置及电子设备
CN110597808B (zh) 分布式数据库表连接方法、装置、系统、服务器及介质
CN112631756A (zh) 一种应用于航天测控软件的分布式调控方法及装置
CN114201549B (zh) 切换方法、系统、服务器及存储介质
CN107547593B (zh) 一种实现日志同步的方法、装置及分布式系统
CN115268785A (zh) 一种应用于分布式存储系统的管理方法、装置及存储介质
CN112650561B (zh) 事务管理方法、系统、网络设备和可读存储介质
US8775505B2 (en) Optimized event routing in distributed data management
CN107710165A (zh) 用于存储节点同步业务请求的方法和装置
CN112118118B (zh) 基于反熵算法的指令通知消息广播方法及装置
CN107153594B (zh) 分布式数据库系统的ha组件选主方法及其系统

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
GR01 Patent grant
GR01 Patent grant