CN112422320B - 服务器的主从切换方法、装置和服务器 - Google Patents

服务器的主从切换方法、装置和服务器 Download PDF

Info

Publication number
CN112422320B
CN112422320B CN202011167180.4A CN202011167180A CN112422320B CN 112422320 B CN112422320 B CN 112422320B CN 202011167180 A CN202011167180 A CN 202011167180A CN 112422320 B CN112422320 B CN 112422320B
Authority
CN
China
Prior art keywords
server
slave
master
priority
switching
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
CN202011167180.4A
Other languages
English (en)
Other versions
CN112422320A (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.)
Beijing Kingsoft Cloud Network Technology Co Ltd
Original Assignee
Beijing Kingsoft Cloud Network Technology 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 Beijing Kingsoft Cloud Network Technology Co Ltd filed Critical Beijing Kingsoft Cloud Network Technology Co Ltd
Priority to CN202011167180.4A priority Critical patent/CN112422320B/zh
Publication of CN112422320A publication Critical patent/CN112422320A/zh
Application granted granted Critical
Publication of CN112422320B publication Critical patent/CN112422320B/zh
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
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0668Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0817Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Hardware Redundancy (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明提供了一种服务器的主从切换方法、装置和服务器,该方法包括:如果监测到当前的主服务器处于异常状态,基于预设的优先级顺序在多个从服务器中选取优先级最高的目标从服务器;其中,每个从服务器都预先设置有对应的优先级;将目标从服务器切换成为新的主服务器。本发明不仅可以按照用户所需选取优先级最高的从服务器,而且节约了现有选举过程中所需的多次通信时间,提升了主从切换效率。

Description

服务器的主从切换方法、装置和服务器
技术领域
本发明涉及通信技术领域,尤其是涉及一种服务器的主从切换方法、装置和服务器。
背景技术
由于网络异常以及服务器不稳定等原因经常出现,为了保证数据库存储的高可用性及持续可用性,通常会将数据库以一主多从(一个主库多个从库)的形式分布式部署于服务器集群中,在主服务器出现异常时将其它从服务器变为主服务器,现有技术中主要是采用选举方式随机选择一个从服务器作为主服务器,一方面随机性较强,可能选取的服务器并非用户所需,另一方面选举需要多次通信,导致主从切换时间较长,切换效率较低。
发明内容
有鉴于此,本发明的目的在于提供一种服务器的主从切换方法、装置和服务器,不仅可以按照用户所需选取优先级最高的从服务器,而且节约了现有选举过程中所需的多次通信时间,提升了主从切换效率。
为了实现上述目的,本发明实施例采用的技术方案如下:
第一方面,本发明实施例提供了一种服务器的主从切换方法,所述方法应用于服务器集群中的管理服务器,包括:如果监测到当前的主服务器处于异常状态,基于预设的优先级顺序在多个从服务器中选取优先级最高的目标从服务器;其中,每个从服务器都预先设置有对应的优先级;将所述目标从服务器切换成为新的主服务器。
在一种实施方式中,所述基于预设的优先级顺序在多个从服务器中选取优先级最高的目标从服务器的步骤,包括:根据集群列表中记录的各从服务器信息,在多个从服务器中查找优先级最高的从服务器;其中,所述服务器信息包括主从状态标识、优先级别标识和服务状态标识;如果查找到的所述从服务器的服务状态标识表征可正常服务,将查找到的所述从服务器作为目标从服务器。
在一种实施方式中,所述方法还包括:验证所述新的主服务器是否正常运行;如果否,确定网络异常,并将所述新的主服务器恢复成为从服务器。
在一种实施方式中,所述验证所述新的主服务器是否正常运行的步骤,包括:采用共识算法验证所述新的主服务器是否正常运行。
在一种实施方式中,所述采用共识算法验证所述新的主服务器是否正常运行的步骤,包括:统计其它从服务器针对所述新的主服务器外发的信息包的应答数;如果所述应答数低于所述信息包数量的一半,确定所述新的主服务器非正常运行。
在一种实施方式中,所述优先级顺序与服务器所在地有关。
在一种实施方式中,所述主服务器内设置有主数据库,所述从服务器内设置有从数据库;所述主数据库供客户端进行读取和/或编辑。
第二方面,本发明实施例还提供一种服务器,包括存储器、处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面任一项所述的方法的步骤。
第三方面,本发明实施例提供了一种机器可读存储介质,所述机器可读存储介质存储有机器可运行指令,所述机器可运行指令在被处理器调用和运行时,所述机器可运行指令促使所述处理器运行所述第一方面任一项所述的方法。
本发明实施例提供了一种服务器的主从切换方法、装置和服务器,如果监测到当前的主服务器处于异常状态,则基于预设的优先级顺序在多个从服务器中选取优先级最高的目标从服务器,然后将目标从服务器切换成为新的主服务器。在该方法中,每个从服务器都预先设置有对应的优先级,在当前的主服务器异常时,直接基于优先级顺序选取从服务器作为新的主服务器,不仅可以按照用户需求选取优先级最高的从服务器,而且节约了现有选举过程中所需的多次通信时间,提升了主从切换效率。
本发明的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本发明的上述技术即可得知。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本发明实施例所提供的一种服务器的主从切换方法流程图;
图2示出了本发明实施例所提供的一种主从库切换示意图;
图3示出了本发明实施例所提供的一种主从库切换方法流程图;
图4示出了本发明实施例所提供的一种服务器的主从切换装置的结构框图;
图5示出了本发明实施例所提供的一种服务器的主从切换装置的结构框图;
图6示出了本发明实施例所提供的一种服务器的结构框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
相关技术中,数据库部署的服务器大多采用X86服务器,在运行过程中出现异常的情况较多,可能是因为服务器自身宕机导致,也可能是因为网络异常导致,因此服务器不稳定已成为共识,因此大多采用一个主服务器(leader)和多个从服务器(follower)的方式实现数据备份,主服务器和从服务器之间的数据库内容同步,增加了数据库***的可用性。在主服务器出现问题时通过将其它从服务器作为主服务器。现有技术中,大多在发现主服务器异常时采用选举的方式随机选择一台从服务器作为主服务器。诸如,在从服务器在指定时长内未收到来自主服务器的心跳,则会主动发起选举,选举结果存在一定的不确定性,也即最终选举可以成为主服务器的从服务器具有一定的随机性,诸如,可能是最先监测到主服务器异常的从服务器当选,而并非用户所需。此外,选举过程中需要多个从服务器之间多次通信(投票),导致主从切换时间较长,具有一定的时间延时,切换效率较低。
为改善上述问题,本发明实施例主要提供了一种服务器的主从切换方法、装置和服务器,该方法的核心思想在于根据用户需求而为服务器配置对应的优先级,以便在主从切换时依据优先级顺序来确定可以成为leader的从服务器,不仅可以按照用户所需选取优先级最高的从服务器,而且节约了现有选举过程中所需的多次通信时间,提升了主从切换效率。通过这种方式,可以有效保证服务器集群数据存储的高可用性和稳定性。
为便于理解,以下对本发明实施例进行详细介绍。
首先参见图1所示的一种服务器的主从切换方法流程图,该方法可应用于分布式环境,具体可由服务器集群中的管理服务器(也可称为管理节点)执行,该方法中所提及的主服务器又可称为主节点,从服务器又可称为从节点,因此该方法又可称为主从节点的切换方法,主要包括如下步骤S102~步骤S104:
步骤S102,如果监测到当前的主服务器处于异常状态,基于预设的优先级顺序在多个从服务器中选取优先级最高的目标从服务器;其中,每个从服务器都预先设置有对应的优先级。
诸如,如果监测不到主服务器的心跳,或者监测到对主服务器的通信包进行响应的从服务器的数量较少,则确定主服务器处于异常状态,处于异常状态的主服务器可能的原因有:1)主服务器自身故障,诸如主服务器宕机。2)网络异常。在确定主服务器处于异常状态后,为了确保服务器集群的可用性,需要执行主从切换操作,也即选取某一从服务器作为新的主服务器。为了使选取的从服务器能够满足用户需求,并且尽可能缩短主从切换时间,本实施例为每个从服务器都预先设置有对应的优先级,基于优先级顺序在多个从服务器中选取优先级最高的目标从服务器,可以理解的是,这种方式可以确保选取的从服务器是最符合用户意愿的,而且由于直接选取优先级最高的从服务器即可,无需从服务器之间进行选举,较好的节约了选举过程中所需的通信时间,缩短了主从切换延时。
步骤S104,将目标从服务器切换成为新的主服务器。
在实际应用中,管理服务器可以将集群列表中用于表征目标从服务器主从状态的标识进行修改,诸如,原来通过“1”标识表征目标从服务器为从状态,也即表征目标从服务器当前为follower,则在将目标从服务器切换成为新的主服务器时,将“1”修改为用于表征主状态的“0”,也即表征目标从服务器当前已切换为leader。
本实施例提供的上述服务器的主从切换方法,每个从服务器都预先设置有对应的优先级,在当前的主服务器异常时,直接基于优先级顺序选取从服务器作为新的主服务器,不仅可以按照用户需求选取优先级最高的从服务器,而且节约了现有选举过程中所需的多次通信时间,提升了主从切换效率。
用户可以根据自身需求配置优先级,诸如,基于服务器所在地因素、服务器性能因素、服务器服务时长因素等用户自身更关心的服务器相关因素设置优先级顺序。在一种实施方式中,可以设定优先级顺序与服务器所在地有关。这种优先级顺序的设置方式,有助于使服务器集群更为稳定,诸如设定距离主服务器最近的从服务器的优先级最高,比如,与主服务器位于同机房的从服务器进行主从切换的方式与选取与主服务器位于异地的从服务器进行主从切换的方式相比,切换过程对于服务器集群而言影响更小。
对于数据存储应用场景中,服务器内都设置有数据库,其中,主服务器内设置有主数据库(也可称之为,主库),从服务器内设置有从数据库(也可称之为,从库);主库供客户端进行读取和/或编辑。从库和主库中的内容都是同步的,从而确定数据库存储的高可用性和持续可用性。服务器的主从切换方法又可称为数据库的主从切换方法(或称为主从库切换方法),为便于理解,可参见图2所示的一种主从库切换示意图,简单示意出了三种优先级,优先级顺序为长子、次子和最小者。当然以上仅为示例,在实际应用中,还可以直接以第一优先级、第二优先级、第三优先级等进行表征,或者以一等级、二等级、三等级进行表征,对于优先级的级别表述在此不进行限定,此外,图2中的三种优先级仅为示意,优先级的级别可以根据需求设置多种,诸如5级、10级等,在此也不进行限定。图2示意出,在进行主从切换时,按照优先级顺序对三个从库中的长子进行优先切换。这种基于优先级顺序进行主从切换的方式,也可理解为是本实施例提出的一种继承制切换方式,与现有的选举切换方式相比,不仅节约了选举所需时间,提升了主从切换效率,而且也更符合用户意愿。
在基于预设的优先级顺序在多个从服务器中选取优先级最高的目标从服务器时,可以根据集群列表中记录的各服务器信息,在多个从服务器中查找优先级最高的从服务器,如果查找到的从服务器的服务状态标识表征可服务,将查找到的从服务器作为目标从服务器。在本实施例中,服务器信息包括主从状态标识、优先级别标识和服务状态标识。主从状态标识也即表征该服务器是处于主状态(也即leader)还是处于从状态(也即follower),优先级别标识用于表征该服务器在预设优先级顺序中的级别,服务状态标识用于表征该服务器处于正常服务状态(可服务)还是异常状态(不可服务)。管理服务器可以基于主从状态标识确定多个从服务器,并基于优先级别标识从多个从服务器中查找优先级最高的从服务器,如果该从服务器的服务状态标识表示该从服务器可提供正常服务,则将该从服务器确定为待切换的目标从服务器,并将目标从服务器的主从状态标识进行更改,以实现主从切换。客户端在发现无法从原有主库中正常读取/编辑数据时,可以通过集群列表中服务器的主从状态标识确定新的主服务器,并自动切换至新的主服务器上的数据库进行数据读取/编辑。
在实际应用中,如果在多个从服务器中存在优先级别相同且级别均为最高的从服务器,则可以从中随机选一个即可,或者按照多个优先级别相同的从服务器在集群列表中信息记录的先后顺序进行选取,在此不进行限定。
考虑到可能存在网络异常的状态,诸如主服务器异常可能是因为网络闪断而导致,而非主服务器自身故障导致,因此上述方法还包括:验证新的主服务器是否正常运行;如果否,确定网络异常,并将新的主服务器恢复成为从服务器。如果是网络异常,说明原来的主服务器没有问题,因此可以恢复原有状态,重新再变回主服务器,将新的主服务器(也即前述目标从服务器)再恢复成为从服务器。这种先切换后判别的方式为异步方式,不会耽搁主从切换过程,也不会影响主服务器的运行。在网络正常时,上述方式仅为校验,不会对服务器集群产生影响,在网络异常时,通过上述方式可以确知原有的主从切换策略不合适,则再恢复为原有状态。
在验证新的主服务器是否正常运行时,可以采用共识算法验证新的主服务器是否正常运行。共识算法(consensus algorithm)的核心思想在于最后使多个节点对某件事情达成一致的看法,共识算法包括但不限于raft算法,上述采用共识算法验证新的主服务器是否正常运行的方式又可称为选举制验证方式,也即确定大多数从服务器均认可新的主服务器,以保证主从切换结果的有效性。
为便于理解,本实施例给出了一种采用共识算法验证新的主服务器是否正常运行的主要方式,具体包括:统计其它从服务器针对新的主服务器外发的信息包的应答数;如果应答数低于信息包数量的一半,确定新的主服务器非正常运行。通过应答数的多少来判别其它从服务器是否已针对目标从服务器作为新的主服务器达成共识。可以理解的是,在已知新的主服务器正常的情况下,如果应答数低于信息包数量的一半,甚至没有应答,则说明网络异常,当前存在网络异常导致的脑裂或者孤岛现象,因此需要恢复至原有状态,确保服务器集群中只有一个主服务器。
参见图3所示的一种主从库切换方法流程图,该方法由管理节点执行,主要包括如下步骤S302~步骤S312:
步骤S302:如果检测到当前的主库异常,读取集群列表,选择出可用且优先级最高的IP地址对应的从库。在该方法中,按照数据库所在主机的地理位置(IP地址)设定优先级顺序。
步骤S304,将选择的从库的从库状态标识修改为主库状态标识,将选择的从库作为新的主库。此时,原来的主库的主库状态标识变为从库状态标识。在该步骤中,实现了主从库切换。
步骤S306,获取其它从库所在主机对于新的主库所在主机的外发信息包的应答数。
步骤S308,判断应答数是否小于信息包数量的一半。如果是,执行步骤S310;如果否,执行步骤S314。
步骤S310,确定网络异常,确认主从库切换无效,恢复原有状态。也即,将新的主库的主库状态标识再变回至从库状态标识,将原来的主库变更后的从库状态标识再变回至主库状态标识,一切恢复原有状态。如果应答数小于信息包数量的一半甚至没有应答,则说明网络异常,出现有脑裂或者孤岛现象。
步骤S312,确定网络正常,维持主从库切换结果。
由于基于优先级进行主从切换的方式可称为继承制切换方式,而通过共识算法验证主从切换结果的方式可称为选举制验证方式,因此本实施例提供的方案可以概括为:继承制为主选举制为辅的主从切换方案。这种方案一方面可以按照用户需求选取优先级最高的从服务器(从库),降低主从切换时间,提升切换效率,在实际应用中这种方式可使主从切换时间降低至1ms以下,保证了集群稳定性。而且异步的选举制验证方式不会耽搁主从切换过程及影响服务器运行,只有在网络异常时可以验证确知原有的主从切换策略不合适,则再恢复为原有状态。
对应于前述服务器的主从切换方法,本实施例进一步提供了一种服务器的主从切换装置,该装置应用于服务器集群中的管理服务器,参见图4所示的一种服务器的主从切换装置的结构框图,包括:
选取模块42,用于如果监测到当前的主服务器处于异常状态,基于预设的优先级顺序在多个从服务器中选取优先级最高的目标从服务器;其中,每个从服务器都预先设置有对应的优先级;
切换模块44,用于将目标从服务器切换成为新的主服务器。
本实施例提供的上述服务器的主从切换装置,每个从服务器都预先设置有对应的优先级,在当前的主服务器异常时,直接基于优先级顺序选取从服务器作为新的主服务器,不仅可以按照用户需求选取优先级最高的从服务器,而且节约了现有选举过程中所需的多次通信时间,提升了主从切换效率。
在一种实施方式中,选取模块42进一步用于:根据集群列表中记录的各从服务器信息,在多个从服务器中查找优先级最高的从服务器;其中,服务器信息包括主从状态标识、优先级别标识和服务状态标识;如果查找到的从服务器的服务状态标识表征可正常服务,将查找到的从服务器作为目标从服务器。
在一种实施方式中,参见图5所示,上述装置还包括验证模块和恢复模块,验证模块52,用于验证新的主服务器是否正常运行;恢复模块54,用于如果验证模块的验证结果为否,确定网络异常,并将新的主服务器恢复成为从服务器。
在一种实施方式中,验证模块52进一步用于:采用共识算法验证新的主服务器是否正常运行。
在一种实施方式中,验证模块52进一步用于:统计其它从服务器针对新的主服务器外发的信息包的应答数;如果应答数低于信息包数量的一半,确定新的主服务器非正常运行。
在一种实施方式中,优先级顺序与服务器所在地有关。
在一种实施方式中,主服务器内设置有主数据库,从服务器内设置有从数据库;主数据库供客户端进行读取和/或编辑。
本发明实施例还提供了一种服务器,包括存储器、处理器,存储器中存储有可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述服务器的主从切换方法的步骤。本实施例提供了服务器的一种具体结构,参见图6所示,该服务器包括处理器61和存储器60,该存储器60存储有能够被处理器61执行的机器可执行指令,该处理器61执行机器可执行指令以实现上述服务的最大承载流量确定方法或者上述服务的部署方法。
进一步地,图6所示的服务器还包括总线62和通信接口63,处理器61、通信接口63和存储器60通过总线62连接。
其中,存储器60可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口63(可以是有线或者无线)实现该***网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。总线62可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
处理器61可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器61中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器61可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital SignalProcessor,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器60,处理器61读取存储器60中的信息,结合其硬件完成前述实施例的方法的步骤。
本发明实施例还提供了一种机器可读存储介质,该机器可读存储介质存储有机器可执行指令,该机器可执行指令在被处理器调用和执行时,该机器可执行指令促使处理器实现上述服务器的主从切换方法,具体实现可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置和/或电子设备的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (7)

1.一种服务器的主从切换方法,其特征在于,所述方法应用于服务器集群中的管理服务器,包括:
如果监测到当前的主服务器处于异常状态,基于预设的优先级顺序在多个从服务器中选取优先级最高的目标从服务器;其中,每个从服务器都预先设置有对应的优先级;
将所述目标从服务器切换成为新的主服务器;
所述方法还包括:验证所述新的主服务器是否正常运行;如果否,确定网络异常,并将所述新的主服务器恢复成为从服务器;
所述验证所述新的主服务器是否正常运行的步骤,包括:采用共识算法验证所述新的主服务器是否正常运行;
所述采用共识算法验证所述新的主服务器是否正常运行的步骤,包括:统计其它从服务器针对所述新的主服务器外发的信息包的应答数;如果所述应答数低于所述信息包数量的一半,确定所述新的主服务器非正常运行。
2.根据权利要求1所述的方法,其特征在于,所述基于预设的优先级顺序在多个从服务器中选取优先级最高的目标从服务器的步骤,包括:
根据集群列表中记录的各从服务器信息,在多个从服务器中查找优先级最高的从服务器;其中,所述服务器信息包括主从状态标识、优先级别标识和服务状态标识;
如果查找到的所述从服务器的服务状态标识表征可正常服务,将查找到的所述从服务器作为目标从服务器。
3.根据权利要求1至2任一项所述的方法,其特征在于,所述主服务器内设置有主数据库,所述从服务器内的设置有从数据库;所述主数据库供客户端进行读取和/或编辑。
4.一种服务器的主从切换装置,其特征在于,所述装置应用于服务器集群中的管理服务器,包括:
选取模块,用于如果监测到当前的主服务器处于异常状态,基于预设的优先级顺序在多个从服务器中选取优先级最高的目标从服务器;其中,每个从服务器都预先设置有对应的优先级;
切换模块,用于将所述目标从服务器切换成为新的主服务器;
还包括验证模块和恢复模块,所述验证模块,用于验证所述新的主服务器是否正常运行;所述恢复模块,用于如果是验证模块的验证结果为否,确定网络异常,并将所述新的主服务器恢复成为从服务器;
所述验证模块,还用于:采用共识算法验证所述新的主服务器是否正常运行;
所述验证模块,还用于:统计其它从服务器针对所述新的主服务器外发的信息包的应答数;如果所述应答数低于所述信息包数量的一半,确定所述新的主服务器非正常运行。
5.根据权利要求4所述的装置,其特征在于,所述选取模块还用于:
根据集群列表中记录的各从服务器信息,在多个从服务器中查找优先级最高的从服务器;其中,所述服务器信息包括主从状态标识、优先级别标识和服务状态标识;
如果查找到的所述从服务器的服务状态标识表征可正常服务,将查找到的所述从服务器作为目标从服务器。
6.一种服务器,包括存储器、处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述权利要求1至3任一项所述的方法的步骤。
7.一种机器可读存储介质,其特征在于,所述机器可读存储介质存储有机器可运行指令,所述机器可运行指令在被处理器调用和运行时,所述机器可运行指令促使所述处理器运行所述权利要求1至3任一项所述的方法。
CN202011167180.4A 2020-10-27 2020-10-27 服务器的主从切换方法、装置和服务器 Active CN112422320B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011167180.4A CN112422320B (zh) 2020-10-27 2020-10-27 服务器的主从切换方法、装置和服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011167180.4A CN112422320B (zh) 2020-10-27 2020-10-27 服务器的主从切换方法、装置和服务器

Publications (2)

Publication Number Publication Date
CN112422320A CN112422320A (zh) 2021-02-26
CN112422320B true CN112422320B (zh) 2022-11-11

Family

ID=74841791

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011167180.4A Active CN112422320B (zh) 2020-10-27 2020-10-27 服务器的主从切换方法、装置和服务器

Country Status (1)

Country Link
CN (1) CN112422320B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114039976B (zh) * 2021-10-29 2024-01-09 深圳市科思科技股份有限公司 服务器集群主从机管理方法及***
CN116112545A (zh) * 2021-11-09 2023-05-12 北京金山云网络技术有限公司 设备在线状态的监测方法、装置、***和电子设备
CN114338727B (zh) * 2022-01-05 2024-03-12 中国建设银行股份有限公司 服务集群的构建方法及相关装置
CN114363156A (zh) * 2022-01-25 2022-04-15 南瑞集团有限公司 一种基于集群技术的水电站计算机监控***部署方法
CN114531373A (zh) * 2022-02-25 2022-05-24 苏州浪潮智能科技有限公司 节点状态检测方法、节点状态检测装置、设备及介质
CN115499447A (zh) * 2022-09-15 2022-12-20 北京天融信网络安全技术有限公司 一种集群主节点确认方法、装置、电子设备及存储介质
CN115567395B (zh) * 2022-11-10 2023-03-07 苏州浪潮智能科技有限公司 一种主从节点确定方法、装置、电子设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104765889A (zh) * 2015-04-30 2015-07-08 北京奇虎科技有限公司 基于数据库高可用框架的切换方法及装置
CN108040108A (zh) * 2017-12-11 2018-05-15 杭州电魂网络科技股份有限公司 通信切换方法、装置、协调服务器及可读存储介质
CN110413685A (zh) * 2019-04-12 2019-11-05 财付通支付科技有限公司 数据库服务切换方法、装置、可读存储介质和计算机设备

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110908801B (zh) * 2019-11-12 2022-07-12 金蝶软件(中国)有限公司 基于区块链的数据处理方法、装置、计算机设备和存储介质
CN111277645B (zh) * 2020-01-16 2023-02-10 深圳市迅雷网络技术有限公司 主备节点热切换方法、区块链***、区块链节点及介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104765889A (zh) * 2015-04-30 2015-07-08 北京奇虎科技有限公司 基于数据库高可用框架的切换方法及装置
CN108040108A (zh) * 2017-12-11 2018-05-15 杭州电魂网络科技股份有限公司 通信切换方法、装置、协调服务器及可读存储介质
CN110413685A (zh) * 2019-04-12 2019-11-05 财付通支付科技有限公司 数据库服务切换方法、装置、可读存储介质和计算机设备

Also Published As

Publication number Publication date
CN112422320A (zh) 2021-02-26

Similar Documents

Publication Publication Date Title
CN112422320B (zh) 服务器的主从切换方法、装置和服务器
CN109462502B (zh) 配置信息保存指令的控制方法、装置及sdn控制器
EP2273371A2 (en) Failover procedure for server system
EP3528431A1 (en) Paxos protocol-based methods and apparatuses for online capacity expansion and reduction of distributed consistency system
CN111163173B (zh) 集群配置方法、装置、服务器及可读存储介质
CN111104282B (zh) 一种基于区块链的节点处理方法和装置
CN110460484B (zh) 一种基于pbft算法改进的单节点异常主动恢复方法
CN113132176B (zh) 一种控制边缘节点的方法、节点及边缘计算***
CN110635941A (zh) 一种数据库节点集群故障迁移方法与装置
CN109756382B (zh) 故障定位方法和装置
CN111752488B (zh) 存储集群的管理方法、装置、管理节点及存储介质
CN102055644A (zh) 分布式目录服务***中负载管理的方法、装置和***
CN112398692A (zh) 共识流程处理方法、装置和电子设备
CN112612769A (zh) 文件处理方法、装置及存储介质
CN111385359A (zh) 对象网关的负载处理方法及装置
CN114554593A (zh) 数据处理方法及装置
CN107181608B (zh) 一种恢复服务及性能提升的方法及运维管理***
CN109587218B (zh) 一种集群选举的方法和装置
CN113055203B (zh) Sdn控制平面的异常恢复方法及装置
CN113760519B (zh) 分布式事务处理方法、装置、***和电子设备
CN115858250A (zh) 数据恢复方法、装置、存储介质及电子装置
CN113064768B (zh) 在区块链***中切换分片节点的方法和装置
CN115470041A (zh) 一种数据灾备管理方法及装置
CN115878450A (zh) 执行测试任务的方法及装置
CN112083888A (zh) 文件存储方法、装置和电子设备

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