CN116760695A - 服务器切换方法、装置、设备、存储介质和程序产品 - Google Patents

服务器切换方法、装置、设备、存储介质和程序产品 Download PDF

Info

Publication number
CN116760695A
CN116760695A CN202310752432.7A CN202310752432A CN116760695A CN 116760695 A CN116760695 A CN 116760695A CN 202310752432 A CN202310752432 A CN 202310752432A CN 116760695 A CN116760695 A CN 116760695A
Authority
CN
China
Prior art keywords
server
servers
main server
switching
standby
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.)
Pending
Application number
CN202310752432.7A
Other languages
English (en)
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.)
Industrial and Commercial Bank of China Ltd ICBC
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
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 Industrial and Commercial Bank of China Ltd ICBC filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN202310752432.7A priority Critical patent/CN116760695A/zh
Publication of CN116760695A publication Critical patent/CN116760695A/zh
Pending legal-status Critical Current

Links

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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Hardware Redundancy (AREA)

Abstract

本申请涉及智能运维领域,可用于金融科技领域,特别是涉及一种服务器切换方法、装置、设备、存储介质和程序产品。所述方法包括:接收服务器群组中各服务器上报的状态信息;服务器群组包括主服务器和备服务器,若主服务器上报的状态信息用于表征主服务器的当前状态为异常状态,则从备服务器中确定目标备服务器,将目标备服务器切换为新的主服务器,提高了服务器切换的效率。

Description

服务器切换方法、装置、设备、存储介质和程序产品
技术领域
本申请涉及智能运维领域,可用于金融科技领域,特别是涉及一种服务器切换方法、装置、设备、存储介质和程序产品。
背景技术
目前,金融订单交易系统通常包括外联前置群组、业务处理群组、业务管理群组以及数据库。其中,外联前置群组负责与外部交互,每个外联前置均有主服务器和多台备服务器;业务处理群组用于实现交易过程的业务处理,每个业务处理亦有主服务器和多台备服务器。
传统技术中,当服务器宕机、监控到服务有异常或交易量过大时,由人工去进行多台服务器的切换。
然而,由人工切换服务器的效率低。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高服务器切换效率的服务器切换方法、装置、设备、存储介质和程序产品。
第一方面,本申请提供了一种服务器切换方法。该方法包括:
接收服务器群组中各该服务器上报的状态信息;该服务器群组包括主服务器和备服务器;
若该主服务器上报的状态信息用于表征该主服务器的当前状态为异常状态,则从该备服务器中确定目标备服务器;
将该目标备服务器切换为新的主服务器。
在其中一个实施例中,该备服务器的数量为多个;该从该备服务器中确定目标备服务器,包括:
根据各该备服务器的状态信息和优先级,确定该目标备服务器。
在其中一个实施例中,该将该目标备服务器切换为新的主服务器,包括:
向该目标备服务器发送热启动命令;该热启动命令用于指示该目标备服务器进行热启动;
若接收到该目标备服务器基于该热启动指令发送的热启动完成信号,则将该目标备服务器切换为该新的主服务器。
在其中一个实施例中,该将该目标备服务器切换为新的主服务器,包括:
将管理设备的存储地址中该主服务器的标识信息替换为该目标备服务器的标识信息。
在其中一个实施例中,该服务器群组的数量为多个;该方法还包括:
根据各该服务器群组的处理权重,确定各该服务器群组的处理顺序;
根据各该服务器群组的处理顺序,确定各该服务器群组中的主服务器的当前状态。
在其中一个实施例中,该根据各该服务器群组的处理顺序,确定各该服务器群组中的主服务器的当前状态,包括:
若获取到第一切换锁,则根据各该服务器群组的处理顺序,确定各该服务器群组中的主服务器的当前状态。
在其中一个实施例中,该将该目标备服务器切换为新的主服务器,包括:
若获取到第二切换锁,则将该目标备服务器切换为该新的主服务器。
在其中一个实施例中,该方法还包括:
若已将该目标备服务器切换为该新的主服务器,则向该服务器群组中的主服务器发送检测指令;该检测指令用于指示该主服务器检测与其他服务器之间的通信连接信息;
接收该主服务器发送的与该其他服务器之间的通信连接信息;
根据该主服务器与其他服务器之间的通信连接信息,向该其他服务器发出断开连接指令;该断开连接指令用于指示该其他服务器断开与主服务器的连接。
在其中一个实施例中,该方法还包括:
若已将该目标备服务器切换为该新的主服务器,则向该新的主服务器发送检测指令;该检测指令用于指示该新的主服务器检测与其他服务器之间的通信连接信息;
接收该新的主服务器发送的与该其他服务器之间的通信连接信息;
根据该新的主服务器与其他服务器之间的通信连接信息,向该其他服务器发出连接指令;该连接指令用于指示该其他服务器与新的主服务器的建立连接。
第二方面,本申请还提供了一种服务器切换装置。该装置包括:
第一接收模块,用于接收服务器群组中各该服务器上报的状态信息;该服务器群组包括主服务器和备服务器;
第一确定模块,用于若该主服务器上报的状态信息用于表征该主服务器的当前状态为异常状态,则从该备服务器中确定目标备服务器;
第一发送模块,用于将该目标备服务器切换为新的主服务器。
第三方面,本申请还提供了一种计算机设备。该计算机设备包括存储器和处理器,该存储器存储有计算机程序,该处理器执行该计算机程序时实现以上方法的步骤。
第四方面,本申请还提供了一种计算机可读存储介质。该计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以上方法的步骤。
第五方面,本申请还提供了一种计算机程序产品。该计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以上方法的步骤。
上述服务器切换方法、装置、设备、存储介质和程序产品,接收服务器群组中各服务器上报的状态信息;服务器群组包括主服务器和备服务器,若主服务器上报的状态信息用于表征主服务器的当前状态为异常状态,则从备服务器中确定目标备服务器,将目标备服务器切换为新的主服务器。传统技术中,当服务器宕机、监控到服务有异常或交易量过大时,由人工去进行多台服务器的切换,切换服务器的效率低。而本申请实施例中利用管理设备完成主服务器的状态检测,若主服务器存在异常,再从多个备服务器中确定可以作为目标备服务器的服务器,利用目标备服务器替换主服务器作为新的主服务器,提高了服务器切换的效率。
附图说明
图1为本申请实施例提供的一种服务器切换方法的应用环境图;
图2为本申请实施例提供的一种服务器切换方法的流程示意图之一;
图3为本申请实施例提供的一种服务器和仲裁机的交互图;
图4为本申请实施例提供的一种新的主服务器确定方法的流程示意图;
图5为本申请实施例提供的一种服务器切换方法的流程示意图之二;
图6为本申请实施例提供的一种服务器自动切换的示例图之一;
图7为本申请实施例提供的一种服务器自动切换的示例图之二;
图8为本申请实施例提供的一种服务器自动切换的示例图之三;
图9为本申请实施例提供的一种手动服务器切换的示意图;
图10为本申请实施例提供的一种管理设备控制服务器切换的示意图;
图11为本申请实施例提供的一种示例性的服务器切换的示意图;
图12为本申请实施例提供的一种金融订单交易系统中的服务器切换示意图;
图13为本申请实施例提供的一种服务器切换装置的结构框图;
图14为本申请实施例提供的一种计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
目前,金融订单交易系统通常包括外联前置群组、业务处理群组、业务管理群组以及数据库。其中,外联前置群组负责与外部交互,每个外联前置均有主、热备、冷备、灾备四台服务器;业务处理群组用于实现交易过程的业务处理,每个业务处理亦均有主备、热备、冷备、灾备四台服务器。即,当服务器宕机、监控到服务有异常或交易量过大时,需要对多台服务器进行切换。
本申请实施例提供的服务器切换方法,涉及智能运维领域,可用于金融科技领域,可以应用于如图1所示的应用环境中。其中,各服务器101通过网络与管理设备102进行通信,数据存储系统可以存储管理设备102需要处理的数据。数据存储系统可以集成在管理设备102上,也可以放在云上或其他服务器上。服务器101可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,提供了一种服务器切换方法,如图2所示,图2为本申请实施例提供的一种服务器切换方法的流程示意图之一,以该方法应用于图1中的管理设备为例进行说明,其中,管理设备可以是仲裁机/仲裁服务器,即一种用于仲裁的服务器,包括以下步骤:
S201、接收服务器群组中各服务器上报的状态信息;服务器群组包括主服务器和备服务器。
其中,服务器群组可以包括金融订单交易系统中的外联前置群组、业务处理群组、业务管理群组中的至少一个。每个服务器群组可以包括一个主服务器和至少一个备服务器。状态信息可以是可用状态或不可用状态。
在本申请实施例中,服务器群组中的主服务器和备服务器定时向管理设备上报自己的状态信息,其中,管理设备可以是仲裁服务器。
需要说明是,在系统中可能存在多个管理设备,当一个管理设备收到各服务器上报的状态信息后,可以共享给系统中的其他管理设备。
管理设备还可以接收各服务器上报的服务器信息,可以设置服务器信息表(server_info)来记录服务器信息,表字段可以如:server_info(服务器的序号server_id,服务器所属的服务器群组server_group,服务器的地址ip,服务器的端口号port,服务器热启动停止URL(统一资源定位系统,uniform resource locator)stop_url,服务器热启动URLSTART_URL,备注信息notes,服务器优先级sort_key,服务器的标识信息jvm_name,创建时间create_time)。即,服务器信息包括上述表中的字段。
可以设置服务器状态更新表(server_update)来记录各服务器上报的状态信息、服务器信息等,表字段可以如:server_update(服务器的序号server_id,服务器所属的服务器群组server_group,最后一次更新时间点与1970-01-01的时间差last_update long,最后一次更新时间点update_time datetime,服务器状态status)。
服务器每次上报服务器状态和服务器信息到管理设备之后,根据各服务器的server_group、ip、port,从server_info表找到服务器对应的server_id,然后更新server_update表中的status、last_update long、update_time datetime。如果server_update表中没有数据,则在server_update表中新增一条数据。根据服务器状态更新表可以确定服务器的最后更新时间,以及服务器在最后更新时间时的状态信息。
还可以存在一个控制设备,用该控制设备进行管理设备与服务器之间的交互。也可以直接利用本实施例中的管理设备向服务器发送控制指令,以完成管理设备与服务器之间的交互。
可选的,图3为本申请实施例提供的一种服务器和仲裁机的交互图,如图3所示,可以启动一个定时器,各服务器每隔预设时间找出当前服务器的服务器信息(例如ip和port),并向管理设备(例如仲裁机)发送状态信息和服务器信息,管理设备接收到各服务器的状态信息和各服务器信息后,生成日志存储在本地,并根据接收到的如ip、port等服务器信息更新各服务器的状态,并将更新结果放回给各服务器。其中,管理设备接收到服务器信息并更新各服务器的状态可以是上述实施例中server_update表的举例。
S202、若主服务器上报的状态信息用于表征主服务器的当前状态为异常状态,则从备服务器中确定目标备服务器。
具体地,主服务器定时上报状态信息至管理设备,如果主服务器当前状态为异常状态,或者是管理设备定时检测各服务器的状态信息时未发现主服务器的上报数据,则可以认为需要寻找一个备服务器来作为新的主服务器,此时,可以从各备服务器中挑选优先级高且当前状态正常的服务器作为目标服务器,以便之后完成服务器的切换。
S203、将目标备服务器切换为新的主服务器。
具体地,可以先将目标备服务器进行热启动,等待目标备服务器完成数据加载任务,当热启动完成后,可以令目标备服务器切换为新的主服务器。
上述服务器切换方法中,接收服务器群组中各服务器上报的状态信息;服务器群组包括主服务器和备服务器,若主服务器上报的状态信息用于表征主服务器的当前状态为异常状态,则从备服务器中确定目标备服务器,将目标备服务器切换为新的主服务器。传统技术中,当服务器宕机、监控到服务有异常或交易量过大时,由人工去进行多台服务器的切换,切换服务器的效率低。而本申请实施例中利用管理设备完成主服务器的状态检测,若主服务器存在异常,再从多个备服务器中确定可以作为目标备服务器的服务器,利用目标备服务器替换主服务器作为新的主服务器,提高了服务器切换的效率。
在一个实施例中,本实施例涉及的是备服务器的数量为多个,如何从备服务器中确定目标备服务器的一种可能的实现方式,在上述实施例的基础上,上述S202包括:
根据各备服务器的状态信息和优先级,确定目标备服务器。
其中,优先级可以包括预设的等级信息,该等级信息可以表示在多个备服务器中,该备服务器对比其他备服务器成为主服务器的可能性大小。
在本申请实施例中,管理设备可以首先根据各备服务器的状态信息,确定出状态信息为可用的备服务器,再对状态信息为可用的备服务器的优先级进行排序,选择优先级高的备服务器作为目标备服务器。
例如,现有备服务器A、备服务器B、备服务器C、备服务器D,备服务器A、备服务器B、备服务器C的状态信息为可用状态,备服务器D的状态信息为不可用的状态。则对备服务器A、备服务器B、备服务器C的优先级进行排序,备服务器A的优先级是高,备服务器B的优先级是低,备服务器C的优先级是中。则可以确定备服务器A为目标备服务器。
本实施例中,根据各备服务器的状态信息和优先级,确定目标备服务器。由于考虑到了各备服务器的状态信息和优先级,能够提高备服务器的可用性,减少不合适的备服务器替换为新的主服务器后,新的主服务依旧不可用,而需要再次寻找可替换的备服务器,提高了服务器切换的效率。
在一个实施例中,图4为本申请实施例提供的一种新的主服务器确定方法的流程示意图,如图4所示,本实施例涉及的是如何将目标备服务器切换为新的主服务器的一种可能的实现方式,在上述实施例的基础上,上述S203包括:
S401、向目标备服务器发送热启动命令;热启动命令用于指示目标备服务器进行热启动。
在本申请实施例中,管理设备可以向目标备服务器发送热启动命令,也可以由管理设备向控制设备发送热启动需求指令,由控制设备向目标服务器发送热启动命令。目标备服务器收到热启动命令后,开始进行热启动,进行数据的加载。其中,目标备服务器可以根据server_info表中的热启动相关标识完成热启动。
S402、若接收到目标备服务器基于热启动指令发送的热启动完成信号,则将目标备服务器切换为新的主服务器。
其中,该热启动完成信号可以是目标备服务器发送给管理设备的;也可以是目标备服务器完成热启动后向控制设备发送完成信号,由控制设备将完成信号传递给运维人员,并由运维人员利用终端向管理设备发送热启动完成信号,以指示管理设备去指导服务器进行切换。
在本申请实施例中,如果管理设备接收到目标备服务器基于热启动指令发送的热启动完成信号,则指导目标备服务器切换为新的主服务器。
本实施例中,通过向目标备服务器发送热启动命令;热启动命令用于指示目标备服务器进行热启动,若接收到目标备服务器基于热启动指令发送的热启动完成信号,则将目标备服务器切换为新的主服务器,能够确保待切换为新的主服务器的目标备服务器处于数据加载完成的状态。
可选的,将管理设备的存储地址中主服务器的标识信息替换为目标备服务器的标识信息。
在本申请实施例中,管理设备的存储地址中可以存储大量的数据表,可以将管理设备的存储地址中的数据表中的主服务器的标识信息替换为目标备服务器的标识信息,以便于服务器切换时调用数据表中对应的服务器信息。
例如,可以构建服务器监控表(server_monitor),用于记录各服务器群组中当前的主服务器。表字段如:server_monitor(server_group,server_id);可以将server_monitor表中的主服务器的jvm_name替换为目标备服务器的jvm_name。以表示新的主服务器是目标备服务器。
本实施例中,通过将管理设备的存储地址中主服务器的标识信息替换为目标备服务器的标识信息,利于提高服务器的切换效率。
在一个实施例中,图5为本申请实施例提供的一种服务器切换方法的流程示意图之二,如图5所示,在上述实施例的基础上,服务器群组的数量为多个,方法还包括:
S501、根据各服务器群组的处理权重,确定各服务器群组的处理顺序。
其中,处理权重可以表示各服务器群组的重要度。
在本申请实施例中,管理设备可以根据各服务器群组的处理权重的排序结果,得到服务器群组的处理顺序。例如,服务器群组1的处理权重是0.8,服务器群组2的处理权重是0.9,服务器群组1的处理权重是0.3,则服务器群组1、服务器群组2和服务器群组3的处理顺序为:服务器群组2、服务器群组1、服务器群组3。
S502、根据各服务器群组的处理顺序,确定各服务器群组中的主服务器的当前状态。
具体地,可以根据各服务器群组的处理顺序,按顺序依次确定各服务器群组中的主服务器的当前状态。当有多个管理设备时,也可以由管理设备1和管理设备2协同确定各服务器群组中的主服务器的当前状态。
本实施例中,通过根据各服务器群组的处理权重,确定各服务器群组的处理顺序,根据各服务器群组的处理顺序,确定各服务器群组中的主服务器的当前状态,能够有秩序的进行对服务器群组中的服务器切换,以防重要性高的服务器群组未被优先处理,而导致系统发生严重后果。
可选的,若获取到第一切换锁,则根据各服务器群组的处理顺序,确定各服务器群组中的主服务器的当前状态。
具体地,管理设备(例如仲裁机)可以获取控制设备发送第一切换锁,然后开始对根据各服务器群组的处理顺序,确定各服务器群组中的主服务器的当前状态。第一切换锁可以用于表示当前管理设备进行主服务器的当前状态判断。
例如,可以存在一个服务器锁表(server_lock),server_lock用于控制主服务器和备服务器切换过程中的锁关键操作和分布操作。表字段如:server_lock(锁的标识id,锁的名称lock_name,锁的状态status,管理设备最后一次拿锁时间点lock_time)。该第一切换锁为server_lock表中的一种切换锁。
可选的,若获取到第二切换锁,则将目标备服务器切换为新的主服务器。
具体地,管理设备(例如仲裁机)可以获取控制设备发送第二切换锁,然后开始则将目标备服务器切换为新的主服务器。第二切换锁可以用于表示当前管理设备进行服务器的切换。本实施例中,通过设置却换锁,可以防止多个管理设备(仲裁机)并发处理同样的事务。
例如,图6为本申请实施例提供的一种服务器自动切换的示例图之一,如图6所示,管理设备可以获取为第二切换锁,即切换锁的状态为2,并将超时的主服务器的jvm_name替换为目标备服务器的jvm_name,以完成服务器切换操作,在完成切换操作后,获取第一切换锁,即,切换锁的状态为1。
图7为本申请实施例提供的一种服务器自动切换的示例图之二,如图7所示,管理设备A获取了第一切换锁,即切换锁的状态为1,则可以根据server_info表中的jvm_name和sort_key取得当前状态为异常状态的主服务器,将该主服务器确定为需要进行切换的主服务器。查找可以作为备服务器进行切换的目标备服务器,如果存在目标备服务器,则管理设备可以获取为第二切换锁,即切换锁的状态为2,再令目标备服务器进行热启动加载数据,目标备服务器热启动成功后,记录日志,并将超时的主服务器的jvm_name替换为目标备服务器的jvm_name,以完成服务器切换操作。
例如,图8为本申请实施例提供的一种服务器自动切换的示例图之三,如图8所示,由于获得锁的状态为2的过程为java层面调用,即可能存在服务调度到的缘故,因此,加上定时(例如,每1分钟)检测释放超时锁。取得超时值后,将状态为1并且最后更新时间离当前时间超过超时值的切换锁状态重置为1。自动切换整个流程每1分钟检测一遍,定时释放超时锁每1分钟执行一次,频率设置均通过配置文件定义。超时时间通过数据字典设置,例如,超时时间:数据字典参数(70150,1),默认带出120,2分钟。
可选的,若已将目标备服务器切换为新的主服务器,则向服务器群组中的主服务器发送检测指令;检测指令用于指示主服务器检测与其他服务器之间的通信连接信息,管理设备可以接收主服务器发送的与其他服务器之间的通信连接信息。管理设备可以根据主服务器与其他服务器之间的通信连接信息,向其他服务器发出断开连接指令;断开连接指令用于指示其他服务器断开与主服务器的连接。若已将目标备服务器切换为新的主服务器,则向新的主服务器发送检测指令;检测指令用于指示新的主服务器检测与其他服务器之间的通信连接信息。管理设备可以接收新的主服务器发送的与其他服务器之间的通信连接信息。管理设备可以根据新的主服务器与其他服务器之间的通信连接信息,向其他服务器发出连接指令;连接指令用于指示其他服务器与新的主服务器的建立连接。
可选的,为了解决服务器切换之后,原来已经连接着旧的主服务器的连接无法断开问题,后台引入主备检测,当检测到当前主服务器不是自己时候,就断开当前的所有连接,同时修改当前机器为备服务器,并拒绝后续的session登陆请求。即,各服务器根据服务器监控表中的server_id来看当前主服务器的id,根据当前主服务器的id,查询服务器信息表中该id对应的Jvm_name,来确定该jvm与自己的jvm是否一样,如果一样就说明自己是主服务器。检测频率可以是30s一次。例如,可以在配置文件里面修改。
在一个实施例中,如图9所示,图9为本申请实施例提供的一种手动服务器切换的示意图,人工进行服务器切换的前提是所有备服务器处于可用Active状态。运维人员可在管理控制台界面,找到排序所在组最前面的可用备服务器(状态为Active),点击切换。进行切换前,要确保对应备服务器数据加载成功。即点击切换会先对所在组的备服务器进行数据热加载,此时仲裁机会通过查询server_info表中的start_url,调用此http请求,返回启动成功,然后进入服务器切换操作。否则界面提示用户重启失败以及原因,发送和返回的日志也会记录。成功之后再进行服务器的切换。备服务器的数据热加载成功后,开始服务器切换,此时取得手工切换锁,拿到锁后根据jvm相关信息取得当前主服务器为此jvm的服务器信息,开始循环替换对应服务器列表,根据此jvm相关信息查找状态为Active的备服务器的jvm相关信息,若有可用备机,服务器监控表更新对应server_group的server_id为新的主服务器的,通知备服务器切换为主服务器,同时更新切换日志记录。
在一个实施例中,如图10所示,图10为本申请实施例提供的一种管理设备控制服务器切换的示意图,管理设备(例如仲裁机)启动定时任务,找出当前主服务器状态,超时断开,然后检查备服务器状态,如果可用旧通过备服务器准备作为新的主服务器,再进行主服务器和备服务器的切换。其中时间监控信息可以发送给控制设备或运维人员的终端中。如图11所示,图11为本申请实施例提供的一种示例性的服务器切换的示意图,作为一种可能的服务器切换方法,进行服务器的切换。若处理金融订单交易系统中的服务器切换问题,金融订单交易系统中通常包括外联前置群组、业务处理群组,切换的方式可以参考图12,图12为本申请实施例提供的一种金融订单交易系统中的服务器切换示意图。
需要说明的是,本申请实施例中的附图中的主机均表示主服务器,备用机均表示备服务器。
应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的服务器切换方法的服务器切换装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个服务器切换装置实施例中的具体限定可以参见上文中对于服务器切换方法的限定,在此不再赘述。
在一个实施例中,如图13所示,图13为本申请实施例提供的一种服务器切换装置的结构框图,本实施例提供了一种服务器切换装置1300,包括:第一接收模块1301、第一确定模块1302和第一发送模块1303,其中:
第一接收模块1301,用于接收服务器群组中各服务器上报的状态信息;服务器群组包括主服务器和备服务器。
第一确定模块1302,用于若主服务器上报的状态信息用于表征主服务器的当前状态为异常状态,则从备服务器中确定目标备服务器。
第一发送模块1303,用于将目标备服务器切换为新的主服务器。
在一个实施例中,备服务器的数量为多个时,第一确定模块1302包括:
第一确定单元,用于根据各备服务器的状态信息和优先级,确定目标备服务器。
在一个实施例中,第一发送模块1303包括:
第一发送单元,用于向目标备服务器发送热启动命令;热启动命令用于指示目标备服务器进行热启动。
第一接收单元,用于若接收到目标备服务器基于热启动指令发送的热启动完成信号,则将目标备服务器切换为新的主服务器。
在一个实施例中,第一发送模块1303包括:
第二确定单元,用于将管理设备的存储地址中主服务器的标识信息替换为目标备服务器的标识信息。
在一个实施例中,装置1300还包括:
第二确定模块,用于根据各服务器群组的处理权重,确定各服务器群组的处理顺序。
第三确定模块,用于根据各服务器群组的处理顺序,确定各服务器群组中的主服务器的当前状态。
在一个实施例中,第三确定模块具体用于若获取到第一切换锁,则根据各服务器群组的处理顺序,确定各服务器群组中的主服务器的当前状态。
在一个实施例中,第一发送模块1303具体用于若获取到第二切换锁,则将目标备服务器切换为新的主服务器。
在一个实施例中,装置1300还包括:
第二发送模块,用于若已将目标备服务器切换为新的主服务器,则向服务器群组中的主服务器发送检测指令;检测指令用于指示主服务器检测与其他服务器之间的通信连接信息。
第二接收模块,用于接收主服务器发送的与其他服务器之间的通信连接信息。
第三发送模块,用于根据主服务器与其他服务器之间的通信连接信息,向其他服务器发出断开连接指令;断开连接指令用于指示其他服务器断开与主服务器的连接。
在一个实施例中,装置1300还包括:
第四发送模块,用于若已将目标备服务器切换为新的主服务器,则向新的主服务器发送检测指令;检测指令用于指示新的主服务器检测与其他服务器之间的通信连接信息。
第三接收模块,用于接收新的主服务器发送的与其他服务器之间的通信连接信息。
第五发送模块,用于根据新的主服务器与其他服务器之间的通信连接信息,向其他服务器发出连接指令;连接指令用于指示其他服务器与新的主服务器的建立连接。
上述服务器切换装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图14所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储数据。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种服务器切换方法。
本领域技术人员可以理解,图14中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
接收服务器群组中各服务器上报的状态信息;服务器群组包括主服务器和备服务器;
若主服务器上报的状态信息用于表征主服务器的当前状态为异常状态,则从备服务器中确定目标备服务器;
将目标备服务器切换为新的主服务器。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
根据各备服务器的状态信息和优先级,确定目标备服务器。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
向目标备服务器发送热启动命令;热启动命令用于指示目标备服务器进行热启动;
若接收到目标备服务器基于热启动指令发送的热启动完成信号,则将目标备服务器切换为新的主服务器。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
将管理设备的存储地址中主服务器的标识信息替换为目标备服务器的标识信息。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
根据各服务器群组的处理权重,确定各服务器群组的处理顺序;
根据各服务器群组的处理顺序,确定各服务器群组中的主服务器的当前状态。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
若获取到第一切换锁,则根据各服务器群组的处理顺序,确定各服务器群组中的主服务器的当前状态。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
若获取到第二切换锁,则将目标备服务器切换为新的主服务器。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
若已将目标备服务器切换为新的主服务器,则向服务器群组中的主服务器发送检测指令;检测指令用于指示主服务器检测与其他服务器之间的通信连接信息;
接收主服务器发送的与其他服务器之间的通信连接信息;
根据主服务器与其他服务器之间的通信连接信息,向其他服务器发出断开连接指令;断开连接指令用于指示其他服务器断开与主服务器的连接。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
若已将目标备服务器切换为新的主服务器,则向新的主服务器发送检测指令;检测指令用于指示新的主服务器检测与其他服务器之间的通信连接信息;
接收新的主服务器发送的与其他服务器之间的通信连接信息;
根据新的主服务器与其他服务器之间的通信连接信息,向其他服务器发出连接指令;连接指令用于指示其他服务器与新的主服务器的建立连接。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
接收服务器群组中各服务器上报的状态信息;服务器群组包括主服务器和备服务器;
若主服务器上报的状态信息用于表征主服务器的当前状态为异常状态,则从备服务器中确定目标备服务器;
将目标备服务器切换为新的主服务器。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
根据各备服务器的状态信息和优先级,确定目标备服务器。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
向目标备服务器发送热启动命令;热启动命令用于指示目标备服务器进行热启动;
若接收到目标备服务器基于热启动指令发送的热启动完成信号,则将目标备服务器切换为新的主服务器。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
将管理设备的存储地址中主服务器的标识信息替换为目标备服务器的标识信息。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
根据各服务器群组的处理权重,确定各服务器群组的处理顺序;
根据各服务器群组的处理顺序,确定各服务器群组中的主服务器的当前状态。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
若获取到第一切换锁,则根据各服务器群组的处理顺序,确定各服务器群组中的主服务器的当前状态。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
若获取到第二切换锁,则将目标备服务器切换为新的主服务器。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
若已将目标备服务器切换为新的主服务器,则向服务器群组中的主服务器发送检测指令;检测指令用于指示主服务器检测与其他服务器之间的通信连接信息;
接收主服务器发送的与其他服务器之间的通信连接信息;
根据主服务器与其他服务器之间的通信连接信息,向其他服务器发出断开连接指令;断开连接指令用于指示其他服务器断开与主服务器的连接。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
若已将目标备服务器切换为新的主服务器,则向新的主服务器发送检测指令;检测指令用于指示新的主服务器检测与其他服务器之间的通信连接信息;
接收新的主服务器发送的与其他服务器之间的通信连接信息;
根据新的主服务器与其他服务器之间的通信连接信息,向其他服务器发出连接指令;连接指令用于指示其他服务器与新的主服务器的建立连接。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
接收服务器群组中各服务器上报的状态信息;服务器群组包括主服务器和备服务器;
若主服务器上报的状态信息用于表征主服务器的当前状态为异常状态,则从备服务器中确定目标备服务器;
将目标备服务器切换为新的主服务器。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
根据各备服务器的状态信息和优先级,确定目标备服务器。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
向目标备服务器发送热启动命令;热启动命令用于指示目标备服务器进行热启动;
若接收到目标备服务器基于热启动指令发送的热启动完成信号,则将目标备服务器切换为新的主服务器。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
将管理设备的存储地址中主服务器的标识信息替换为目标备服务器的标识信息。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
根据各服务器群组的处理权重,确定各服务器群组的处理顺序;
根据各服务器群组的处理顺序,确定各服务器群组中的主服务器的当前状态。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
若获取到第一切换锁,则根据各服务器群组的处理顺序,确定各服务器群组中的主服务器的当前状态。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
若获取到第二切换锁,则将目标备服务器切换为新的主服务器。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
若已将目标备服务器切换为新的主服务器,则向服务器群组中的主服务器发送检测指令;检测指令用于指示主服务器检测与其他服务器之间的通信连接信息;
接收主服务器发送的与其他服务器之间的通信连接信息;
根据主服务器与其他服务器之间的通信连接信息,向其他服务器发出断开连接指令;断开连接指令用于指示其他服务器断开与主服务器的连接。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
若已将目标备服务器切换为新的主服务器,则向新的主服务器发送检测指令;检测指令用于指示新的主服务器检测与其他服务器之间的通信连接信息;
接收新的主服务器发送的与其他服务器之间的通信连接信息;
根据新的主服务器与其他服务器之间的通信连接信息,向其他服务器发出连接指令;连接指令用于指示其他服务器与新的主服务器的建立连接。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

Claims (13)

1.一种服务器切换方法,其特征在于,所述方法包括:
接收服务器群组中各所述服务器上报的状态信息;所述服务器群组包括主服务器和备服务器;
若所述主服务器上报的状态信息用于表征所述主服务器的当前状态为异常状态,则从所述备服务器中确定目标备服务器;
将所述目标备服务器切换为新的主服务器。
2.根据权利要求1所述的方法,其特征在于,所述备服务器的数量为多个;所述从所述备服务器中确定目标备服务器,包括:
根据各所述备服务器的状态信息和优先级,确定所述目标备服务器。
3.根据权利要求1或2所述的方法,其特征在于,所述将所述目标备服务器切换为新的主服务器,包括:
向所述目标备服务器发送热启动命令;所述热启动命令用于指示所述目标备服务器进行热启动;
若接收到所述目标备服务器基于所述热启动指令发送的热启动完成信号,则将所述目标备服务器切换为所述新的主服务器。
4.根据权利要求1或2所述的方法,其特征在于,所述将所述目标备服务器切换为新的主服务器,包括:
将管理设备的存储地址中所述主服务器的标识信息替换为所述目标备服务器的标识信息。
5.根据权利要求1所述的方法,其特征在于,所述服务器群组的数量为多个;所述方法还包括:
根据各所述服务器群组的处理权重,确定各所述服务器群组的处理顺序;
根据各所述服务器群组的处理顺序,确定各所述服务器群组中的主服务器的当前状态。
6.根据权利要求5所述的方法,其特征在于,所述根据各所述服务器群组的处理顺序,确定各所述服务器群组中的主服务器的当前状态,包括:
若获取到第一切换锁,则根据各所述服务器群组的处理顺序,确定各所述服务器群组中的主服务器的当前状态。
7.根据权利要求1或2所述的方法,其特征在于,所述将所述目标备服务器切换为新的主服务器,包括:
若获取到第二切换锁,则将所述目标备服务器切换为所述新的主服务器。
8.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
若已将所述目标备服务器切换为所述新的主服务器,则向所述服务器群组中的主服务器发送检测指令;所述检测指令用于指示所述主服务器检测与其他服务器之间的通信连接信息;
接收所述主服务器发送的与所述其他服务器之间的通信连接信息;
根据所述主服务器与其他服务器之间的通信连接信息,向所述其他服务器发出断开连接指令;所述断开连接指令用于指示所述其他服务器断开与主服务器的连接。
9.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
若已将所述目标备服务器切换为所述新的主服务器,则向所述新的主服务器发送检测指令;所述检测指令用于指示所述新的主服务器检测与其他服务器之间的通信连接信息;
接收所述新的主服务器发送的与所述其他服务器之间的通信连接信息;
根据所述新的主服务器与其他服务器之间的通信连接信息,向所述其他服务器发出连接指令;所述连接指令用于指示所述其他服务器与新的主服务器的建立连接。
10.一种服务器切换装置,其特征在于,所述装置包括:
第一接收模块,用于接收服务器群组中各所述服务器上报的状态信息;所述服务器群组包括主服务器和备服务器;
第一确定模块,用于若所述主服务器上报的状态信息用于表征所述主服务器的当前状态为异常状态,则从所述备服务器中确定目标备服务器;
第一发送模块,用于将所述目标备服务器切换为新的主服务器。
11.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至9中任一项所述的方法的步骤。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至9中任一项所述的方法的步骤。
13.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至9中任一项所述的方法的步骤。
CN202310752432.7A 2023-06-25 2023-06-25 服务器切换方法、装置、设备、存储介质和程序产品 Pending CN116760695A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310752432.7A CN116760695A (zh) 2023-06-25 2023-06-25 服务器切换方法、装置、设备、存储介质和程序产品

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310752432.7A CN116760695A (zh) 2023-06-25 2023-06-25 服务器切换方法、装置、设备、存储介质和程序产品

Publications (1)

Publication Number Publication Date
CN116760695A true CN116760695A (zh) 2023-09-15

Family

ID=87960598

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310752432.7A Pending CN116760695A (zh) 2023-06-25 2023-06-25 服务器切换方法、装置、设备、存储介质和程序产品

Country Status (1)

Country Link
CN (1) CN116760695A (zh)

Similar Documents

Publication Publication Date Title
CN103562890B (zh) 在发布/订阅消息系统中管理消息订阅的方法和系统
US9367261B2 (en) Computer system, data management method and data management program
US8380951B1 (en) Dynamically updating backup configuration information for a storage cluster
US20070038885A1 (en) Method for operating an arrangement of a plurality of computers in the event of a computer failure
CN103530200A (zh) 一种服务器热备份系统和方法
CN104035836A (zh) 集群检索平台中的自动容灾恢复方法及系统
US9754032B2 (en) Distributed multi-system management
US9442676B2 (en) Method, device, and system for determining drive letter
CN111158608B (zh) 硬盘故障处理方法、装置及分布式系统
CN111049928A (zh) 数据同步方法、系统、电子设备及计算机可读存储介质
CN112737800A (zh) 服务节点故障定位方法、调用链生成方法及服务器
CN111541762A (zh) 数据处理的方法、管理服务器、设备及存储介质
CN107943615B (zh) 基于分布式集群的数据处理方法与系统
CN108509296B (zh) 一种处理设备故障的方法和系统
EP2110748A2 (en) Cluster control apparatus, control system, control method, and control program
CN113965576A (zh) 基于容器的大数据采集方法、装置、存储介质和设备
CN105323271B (zh) 一种云计算系统以及云计算系统的处理方法和装置
CN113810216A (zh) 一种集群的故障切换方法、装置及电子设备
CN111614701B (zh) 一种分布式集群、以及容器状态切换方法、装置
CN110798492B (zh) 数据存储方法及装置、数据处理系统
CN116760695A (zh) 服务器切换方法、装置、设备、存储介质和程序产品
US8812900B2 (en) Managing storage providers in a clustered appliance environment
CN107294781B (zh) 一种集群配置节点故障转移的方法及系统
CN114896337A (zh) 一种数据上链方法、系统、设备和计算机可读存储介质
CN114116178A (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