分布式系统中主节点的选取方法和装置制造方法及图纸

技术编号:15749945 阅读:102 留言:0更新日期:2017-07-03 16:02
本发明专利技术公开了一种分布式系统中主节点的选取方法和装置,属于互联网领域。所述方法包括:第一分布式节点接收客户端发送的第一数据访问请求,第一数据访问请求为通过分布式系统的主节点进行数据访问的请求,第一分布式节点为分布式系统中任一分布式节点,当第一分布式节点不为分布式系统的主节点时,基于存储的主节点标识,将第一数据访问请求发送给分布式系统的主节点,当确定第一数据访问请求无法发送至分布式系统的主节点时,确定分布式系统的主节点发生故障,并发起主节点选举请求,如果第一分布式节点选举成功,则确定第一分布式节点为分布式系统的主节点。本发明专利技术极大地节省了通信带宽,提高了分布式系统的工作效率。

【技术实现步骤摘要】
分布式系统中主节点的选取方法和装置
本专利技术涉及互联网领域,特别涉及一种分布式系统中主节点的选取方法和装置。
技术介绍
随着互联网技术的快速发展,分布式系统的应用范围越来越广。由于分布式系统是由多个自治的计算机节点作为分布式节点,通过通信网络组成的机群系统,且该分布式系统可以作为服务器侧来为客户端提供数据,因此客户端可以通过该分布式系统中的任意一个分布式节点进行数据访问。而为了保证客户端通过该分布式系统中的任意一个分布式节点访问到的数据都是一致的,一般将该分布式系统中的分布式节点分为一个主节点和多个从节点,主节点不仅可以对自身存储的数据进行修改,还可以对该多个从节点中存储的数据进行修改,从而保证该分布式系统中数据的一致性。而分布式系统中的主节点一般是通过选取得到,因此,亟需一种分布式系统中主节点的选取方法。现有技术中,当该分布式系统创建完成之后,该分布式系统可以从包括的多个分布式节点中,随机选择一个分布式节点作为主节点,并将该分布式系统中除该主节点之外的分布式节点作为从节点。之后,为了保证该主节点和多个从节点之间的正常通信,该主节点必须按照固定周期向该多个从节点发送心跳消息,该心跳消息用于确定该主节点是否正常运行。对于该多个从节点中的任一从节点,当该从节点接收到该心跳消息时,确定该主节点正常运行。而当该从节点未接收到该心跳消息时,确定该主节点发生故障,该从节点可以向该分布式系统中除该从节点之外的其他分布式节点发送主节点选举请求,该主节点选举请求用于确定是否将用于发送该主节点选举请求的分布式节点选举为该分布式系统的主节点,当该从节点选举成功时,将该从节点确定为该分布式系统的主节点,并将该分布式系统中该主节点之外的分布式节点作为从节点,返回按照固定周期向该多个从节点发送心跳消息的步骤。在实现本专利技术的过程中,专利技术人发现现有技术至少存在以下问题:由于现有技术中,该分布式系统中的主节点需要按照固定周期向该分布式系统中的所有从节点发送心跳信息,占用了大量的通信带宽,浪费资源。
技术实现思路
为了解决现有技术的问题,本专利技术实施例提供了一种分布式系统中主节点的选取方法和装置。所述技术方案如下:第一方面,提供了一种分布式系统中主节点的选取方法,所述方法包括:第一分布式节点接收客户端发送的第一数据访问请求,所述第一数据访问请求为通过分布式系统的主节点进行数据访问的请求,所述第一分布式节点为所述分布式系统中任一分布式节点;当所述第一分布式节点不为所述分布式系统的主节点时,基于存储的主节点标识,将所述第一数据访问请求发送给所述分布式系统的主节点;当确定所述第一数据访问请求无法发送至所述分布式系统的主节点时,确定所述分布式系统的主节点发生故障,并发起主节点选举请求;如果所述第一分布式节点选举成功,则确定所述第一分布式节点为所述分布式系统的主节点。在本专利技术实施例中,客户端可以从该分布式系统中随机选取一个分布式节点,将该分布式节点确定为第一分布式节点,并向该第一分布式节点发送第一数据访问请求,当该第一分布式节点不为主节点,将该第一数据访问请求发送给