CN107480014B - 一种高可用设备切换方法及装置 - Google Patents
一种高可用设备切换方法及装置 Download PDFInfo
- Publication number
- CN107480014B CN107480014B CN201710606323.9A CN201710606323A CN107480014B CN 107480014 B CN107480014 B CN 107480014B CN 201710606323 A CN201710606323 A CN 201710606323A CN 107480014 B CN107480014 B CN 107480014B
- Authority
- CN
- China
- Prior art keywords
- equipment
- standby
- disk
- main
- database
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2023—Failover techniques
- G06F11/2033—Failover techniques switching over of hardware resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1658—Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit
Abstract
本发明实施例提供一种高可用设备切换方法及装置。所述方法包括:实时对被监控业务进程进行监控;若判断获知目标被监控业务进程运行异常,且连续重新启动了预设次数,目标被监控业务进程仍然运行异常,则停止向备用设备发送心跳信息,以使得备用设备若判断获知在第一预设时间段内没有接收到主设备发送的心跳信息,则代替主设备处理业务进程。所述装置用于执行所述方法。本发明实施例通过当检测到被监控业务进程异常时进行主备切换,而且定期对主设备和备用设备的数据进行一致性检测、主设备和备用设备上数据与业务的逻辑分离以及定时对本地数据的备份,保证了被监控业务进程的正常运行,提高了数据传输及业务处理的可靠性。
Description
技术领域
本发明实施例涉及计算机技术领域,尤其涉及一种高可用设备切换方法及装置。
背景技术
随着网络通讯技术的日益广泛应用,对数据传输及业务处理性能的需求也多种多样,这样在很多场合下,对数据传输及业务处理的可靠性提出了很高的要求,需要网络设备系统能够长期不间断运行,为了满足上述对数据传输及业务处理的要求,会通过两个及以上的设备来进行工作,将其中一台设备作为主设备,其他设备作为备用设备,当主设备发生故障时,通过备用设备来继续执行任务,以此来保证数据可靠的传输。
现有技术中,主设备和备用设备之间物理连接,主设备正常运行时,会定时向备用设备发送心跳信息,此时备用设备通过心跳信息获知主设备处于正常状态;当主设备宕机时,则不能向备用设备发送心跳信息,备用设备在预设的时间内如果没有接收到主设备发送的心跳信息,则判断获知主设备发生了故障,此时,备用设备代替主设备继续工作。
因此,现在技术中,只有当主设备发生了系统异常导致不能向备用设备发送心跳信息时才会进行设备切换,但是当运行在主设备上的某个业务出现异常,但是主设备整体运行正常时,备用设备仍然可以接收到主设备发送的心跳信息,从而导致了业务不能够正常运行,因此,上述方案降低了数据传输及业务处理的可靠性。
发明内容
针对现有技术存在的问题,本发明实施例提供一种高可用设备切换方法及装置。
第一方面,本发明实施例提供一种高可用设备切换方法,包括:
实时对所有的被监控业务进程进行监控,其中,所述被监控业务进程由预先设定;
若判断获知目标被监控业务进程运行异常,且连续重新启动了预设次数,所述目标被监控业务进程仍然运行异常,则停止向备用设备发送心跳信息,以使得所述备用设备若判断获知在第一预设时间段内没有接收到主设备发送的所述心跳信息,则代替所述主设备处理业务进程。
第二方面,本发明实施例提供一种高可用设备切换装置,包括:
监控模块,用于实时对所有的被监控业务进程进行监控,其中,所述被监控业务进程由预先设定;
切换模块,用于若判断获知目标被监控业务进程运行异常,且连续重新启动了预设次数,所述目标被监控业务进程仍然运行异常,则停止向备用设备发送心跳信息,以使得所述备用设备若判断获知在第一预设时间段内没有接收到主设备发送的所述心跳信息,则代替所述主设备处理业务进程。
第三方面,本发明实施例提供一种电子设备,包括:处理器、存储器和总线,其中,
所述处理器和所述存储器通过所述总线完成相互间的通信;
所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行第一方面的方法步骤。
第四方面,本发明实施例提供一种非暂态计算机可读存储介质,包括:
所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行第一方面的方法步骤。
本发明实施例提供的一种高可用设备切换方法及装置,通过若判断获知目标被监控业务进程运行异常,且连续重新启动了预设次数,该目标被监控业务进程仍然运行异常,则停止向备用设备发送心跳信息,以使得备用设备代替主设备处理所有的业务进程,因此,在主设备系统状态正常但是被监控业务进程运行异常时,进行设备切换,保证了被监控业务进程的正常运行,提高了数据传输及业务处理的可靠性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种高可用设备切换方法流程示意图;
图2为本发明实施例提供的一种高可用设备切换装置结构示意图;
图3为本发明另一实施例提供的一种高可用设备切换装置结构示意图;
图4为本发明实施例提供的电子设备实体结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例提供的一种高可用设备切换方法流程示意图,如图1所示,所述方法,包括:
步骤101:实时对所有的被监控业务进程进行监控,其中,所述被监控业务进程由预先设定;
具体的,主设备实时对所有的正在运行的被监控业务进程进行监控,其中被监控业务进程是根据实际的业务需求预先设定的,不同的主设备上安装了不同的应用软件,因此,不同的主设备上主要实现的功能不同,并且,并不是安装在主设备上的所有的应用软件都是重要的,因此,需要根据主设备所安装的应用软件情况,将需要被重点监控的应用软件对应的进程作为被监控业务进程。由此可知,一台主设备上的被监控业务进程可以有一个,也可以有多个。且应当说明的是,主设备可以为网关设备,服务器等。
步骤102:若判断获知目标被监控业务进程运行异常,且连续重新启动了预设次数,所述目标被监控业务进程仍然运行异常,则停止向备用设备发送心跳信息,以使得所述备用设备若判断获知在第一预设时间段内没有接收到主设备发送的所述心跳信息,则代替所述主设备处理业务进程。
具体的,被监控业务进程中的任意一个或多个为目标被监控业务进程,如果主设备判断获知目标被监控业务进程运行异常,则重启该目标监控业务进程,如果重启了预设次数,该目标监控业务进程仍然运行异常,则确定主设备上无法运行该目标监控业务进程,此时,主设备停止向备用设备发送心跳信息。应当说明的是,主设备与备用设备之间可以通过心跳线进行连接,当主设备处于存活状态时会向备用设备发送心跳信息,此时备用设备接收到主设备发送的心跳信息后,获知主设备状态正常;当主设备监控到目标被监控业务运行异常时,即便主设备系统仍然存活,也禁止向备用设备发送心跳信息。备用设备在第一预设时间段内没有接收到主设备发送的心跳信息,则判断获知主设备发生了异常,此时备用设备代替主设备工作,之前运行在主设备的所有业务进程都通过备用设备来处理,实现了主设备到备用设备的切换。应当说明的是,备用设备是主设备的一个备份,主设备能够运行的所有业务进程,备用设备上也都能够运行。另外,当主设备的系统出现故障时,也不会向备用设备发送心跳信息,此时也需要进行设备切换。
本发明实施例通过若判断获知目标被监控业务进程运行异常,且连续重新启动了预设次数,该目标被监控业务进程仍然运行异常,则停止向备用设备发送心跳信息,以使得备用设备代替主设备处理所有的业务进程,因此,在主设备系统状态正常但是被监控业务进程运行异常时,进行设备切换,保证了被监控业务进程的正常运行,提高了数据传输及业务处理的可靠性。
在上述实施例的基础上,所述方法,还包括:
将主设备处理的所有所述业务进程对应的数据存储到所述主设备的数据库中,同时,将所述数据同步到所述备用设备的数据库中;和/或
将主设备处理的所有业务进程对应的文件存储到所述主设备的磁盘中,同时,将所述文件同步到所述备用设备的磁盘中。
具体的,在监控到目标被监控业务进程运行异常之前,由主设备处理所有的业务进程,主设备在处理业务进程时,会产生数据和/或文件,此时,主设备将产生的数据存储到主设备的数据库中,并且将该数据同步到备用设备的数据库中;同理,主设备将产生的文件存储到主设备的磁盘中,并且将该文件同步到备用设备的磁盘中。应当说明的是,业务进程由主设备处理时,备用设备只接收主设备发送的心跳信息,并不处理业务进程。另外,在主设备和备用设备上,数据和业务在逻辑上的分离的,即在主设备上层运行业务,底层存储着数据及文件。通过数据和业务的逻辑分离使得通过一个主设备即可,减少了设备使用的数量。
在上述实施例的基础上,所述备用设备若判断获知在第一预设时间段内没有接收到主设备发送的所述心跳信息,则代替所述主设备处理业务进程,包括:
所述备用设备若判断获知在第一预设时间段内没有接收到主设备发送的所述心跳信息,则所述备用设备继续执行所述主设备上所有的所述业务进程,并将对所述业务进程对应的数据和/或文件进行存储。
具体的,在正常情况下,备用设备通过接收主设备发送的心跳信息来判断主设备的正常运行,如果备用设备在第一预设时间段内没有接收到主设备发送的心跳信息,则判断得知主设备发生了故障,此时切换为备用设备代替主设备继续处理业务进程,并将在处理业务进程时所产生的数据和/或文件进程存储。
本发明实施例通过当主设备不能够运行被监控业务进程时,通过备用设备来代替主设备进行工作,从而保证了被监控业务进程的正常运行,提高了数据传输及业务处理的可靠性。
在上述实施例的基础上,所述将对所述业务进程对应的数据和/或文件进行存储,包括:
若所述主设备的数据库和磁盘为可访问状态,则所述备用设备将所述业务进程对应的数据存储到所述主设备的数据库中,将所述业务进程对应的文件存储到所述主设备的磁盘中,并将所述数据和所述文件同步到所述备用设备中;
若所述主设备的数据库和磁盘为不可访问状态,则所述备用设备将所述业务进程对应的数据存储到所述备用设备的数据库中,将所述业务进程对应的文件存储到所述备用设备的磁盘中,其中,所述业务进程包括所述被监控业务进程。
具体的,当切换为备用设备处理业务进程时,备用设备优先访问主设备的数据库和磁盘,在主设备只是不能够运行被监控业务进程,但是其数据库及磁盘仍然处于存活状态,此时,主设备的数据库和磁盘是可以被访问的,因此,备用设备将处理业务进程获得的数据存储到主设备的数据库中,将获得的文件存储到主设备的磁盘中。并且,同时,还需要将数据同步到备用设备的数据库上,将文件同步到备用设备的磁盘上。
如果备用设备不能够访问主设备的数据库和磁盘,此时,备用设备才会访问本地的数据库和磁盘,因此,备用设备将处理业务进程获得的数据存储到该备用设备的数据库中,并将获得的文件存储到备用设备的磁盘中。
应当说明的是,主设备和备用设备上的数据与业务是逻辑分离,物理不分离的,即,在主设备上可以存储数据,同时也可以进行业务处理,备用设备也是如此,因此,只需要一台主设备和一台备用设备即可,如果是数据和业务物理分离的话,则需要两台主设备和两台备用设备,分别来存储数据和处理业务。
本发明实施例通过备用设备在工作时,优先访问主设备的数据库和磁盘,当主设备的数据库和磁盘不可访问时,才访问本地数据库和磁盘,从而,最大限度的保证了数据的一致性。
在上述各实施例的基础上,,所述方法,还包括:
根据第一预设周期对所述主设备的数据库和所述备用设备的数据库中的数据进行一致性比较,若判断获知所述主设备的数据库和所述备用设备的数据库中的数据不一致,则发出告警;
根据分时延迟策略对所述主设备的磁盘上存储的文件和所述备用设备的磁盘上存储的文件进行比较。
具体的,为了保证主设备和备用设备中存储的数据的一致性,需要定时对主设备的数据库和备用设备的数据库进行一致性比较,其中,可以通过pt-table-checksum组件进行检测,其检测原理为:在主设备的数据库库中执行基于statement的sql语句来生成主库数据块的checksum,把相同的sql语句传递到备用设备的数据库执行,并在备用设备的数据库上计算相同数据块的checksum,最后,比较主数据库和备用数据库上相同数据块的checksum值,由此判断数据是否一致。如果经过一致性比较发现不一致,则发出告警,通知管理人员进行处理,可以理解的是,主设备也可以先尝试进行修复,如果修复失败,再发出告警。其中,发出告警的方式可以是向预先设定的管理人员发送邮件告知,以便管理人员能够及时处理。
为了保证主设备的磁盘和备用设备的磁盘上存储的文件的一致性,也需要定时进行比较,其中,对磁盘上的文件进行一致性比较采用的方式为分时延迟策略。
本发明实施例通过定时对数据库中的数据和磁盘中的文件进行一致性比较,从而保证了主设备和备用设备上的数据及文件的一致性。
在上述实施例的基础上,所述根据分时延迟策略对所述主设备的磁盘上存储的文件和所述备用设备的磁盘上存储的文件进行比较,包括:
根据第二预设时间段和延时时间,获取所述主设备的磁盘上在对应时间段内进行过修改的所有文件的第一MD5值及所述备用设备的磁盘上的在所述对应时间段进行过修改的所有文件的第二MD5值;
将目标第一MD5值与所述第二MD5值一一匹配,若判断获知匹配失败,则将所述目标第一MD5值对应的文件复制到所述备用设备的磁盘中。
具体的,由于主设备和备用设备可以互相访问,因此,主设备可以从备用设备的磁盘中获取到所有文件的文件信息,根据第二预设时间段和延时时间,以第二预设时间段为周期,每次都获取对应时间段内主设备的磁盘上的所有文件的第一MD5值,且获取的时间要晚于对应时间段。例如,设定第二预设时间段为1小时,延迟时间为10分钟,那么主设备在11:10获取在10:00-11:00之间进行过修改的所有文件对应的第一MD5值,同时,主设备也获取从设备上,在10:00-11:00之间进行过修改的所有文件对应的第二MD5值。
依次对从主设备的磁盘上获取到的文件的第一MD5值进行匹配,即从多个第一MD5值中任意选取一个作为目标第一MD5值,将目标第一MD5值与所有的第二MD5值进行匹配,如果在所有的第二MD5值中有一个与目标第一MD5值相同,则说明匹配成功,则该目标第一MD5值对应的文件已经在备用设备的磁盘中存在。如果在所有的第二MD5值中都没有与目标第一MD5值相等,则说明匹配失败,备用设备的磁盘中没有存储该目标第一MD5值对应的文件,因此,需要将该目标第一MD5值对应的文件复制到备用设备的磁盘中。
另外,为了避免分区损坏造成本地数据丢失,主设备及备用设备对本地数据库和文件在其他分区也进行单独备份。例如:数据库备份可以是每天凌晨3点增量备份,每周日凌晨3点全量备份;文件备份可以是根据配置的时间间隔,定时拷贝到指定的分区。应当说明的是,数据库及文件备份的方式可以根据实际情况进行调整,本发明实施例对比不做具体限定。
本发明实施例通过若判断获知目标被监控业务进程运行异常,且连续重新启动了预设次数,该目标被监控业务进程仍然运行异常,则停止向备用设备发送心跳信息,以使得备用设备代替主设备处理所有的业务进程,因此,在主设备系统状态正常但是被监控业务进程运行异常时,进行设备切换,保证了被监控业务进程的正常运行,提高了数据传输及业务处理的可靠性。
图2为本发明实施例提供的一种高可用设备切换装置结构示意图,如图2所示,所述装置,包括:监控模块201和切换模块202,其中:
监控模块201用于实时对所有的被监控业务进程进行监控,其中,所述被监控业务进程由预先设定;切换模块202用于若判断获知目标被监控业务进程运行异常,且连续重新启动了预设次数,所述目标被监控业务进程仍然运行异常,则停止向备用设备发送心跳信息,以使得所述备用设备若判断获知在第一预设时间段内没有接收到主设备发送的所述心跳信息,则代替所述主设备处理业务进程。
具体的,监控模块201实时对所有的正在运行的被监控业务进程进行监控,其中被监控业务进程是根据实际的业务需求预先设定的。被监控业务进程中的任意一个或多个为目标被监控业务进程,如果切换模块202判断获知目标被监控业务进程运行异常,则重启该目标监控业务进程,如果重启了预设次数,该目标监控业务进程仍然运行异常,则确定主设备上无法运行该目标监控业务进程,此时,主设备停止向备用设备发送心跳信息。应当说明的是,主设备与备用设备之间可以通过心跳线进行连接。备用设备在第一预设时间段内没有接收到主设备发送的心跳信息,则判断获知主设备发生了异常,此时备用设备代替主设备工作,之前运行在主设备的所有业务进程都通过备用设备来处理,实现了主设备到备用设备的切换。应当说明的是,备用设备是主设备的一个备份,主设备能够运行的所有业务进程,备用设备上也都能够运行。另外,当主设备的系统出现故障时,也不会向备用设备发送心跳信息,此时也需要进行设备切换。
本发明提供的装置的实施例具体可以用于执行上述各方法实施例的处理流程,其功能在此不再赘述,可以参照上述方法实施例的详细描述。
本发明实施例通过若判断获知目标被监控业务进程运行异常,且连续重新启动了预设次数,该目标被监控业务进程仍然运行异常,则停止向备用设备发送心跳信息,以使得备用设备代替主设备处理所有的业务进程,因此,在主设备系统状态正常但是被监控业务进程运行异常时,进行设备切换,保证了被监控业务进程的正常运行,提高了数据传输及业务处理的可靠性。
在上述实施例的基础上,所述装置,还包括:
存储模块,用于将主设备处理的所有所述业务进程对应的数据存储到所述主设备的数据库中,同时,将所述数据同步到所述备用设备的数据库中;和/或
将主设备处理的所有业务进程对应的文件存储到所述主设备的磁盘中,同时,将所述文件同步到所述备用设备的磁盘中。
具体的,在监控到目标被监控业务进程运行异常之前,由主设备处理所有的业务进程,主设备在处理业务进程时,会产生数据和/或文件,此时,存储模块将产生的数据存储到主设备的数据库中,并且将该数据同步到备用设备的数据库中;同理,存储模块将产生的文件存储到主设备的磁盘中,并且将该文件同步到备用设备的磁盘中。应当说明的是,业务进程由主设备处理时,备用设备只接收主设备发送的心跳信息,并不处理业务进程。另外,在主设备上数据和业务在逻辑上的分离的,即在主设备上层运行业务,底层存储着数据及文件。通过数据和业务的逻辑分离使得通过一个主设备即可,减少了设备使用的数量。
在上述实施例的基础上,所述备用设备若判断获知在第一预设时间段内没有接收到主设备发送的所述心跳信息,则代替所述主设备处理业务进程,包括:
所述备用设备若判断获知在第一预设时间段内没有接收到主设备发送的所述心跳信息,则所述备用设备继续执行所述主设备上所有的所述业务进程,并将对所述业务进程对应的数据和/或文件进行存储。
具体的,在正常情况下,备用设备通过接收主设备发送的心跳信息来判断主设备的正常运行,如果备用设备在第一预设时间段内没有接收到主设备发送的心跳信息,则判断得知主设备发生了故障,此时切换为备用设备代替主设备继续处理业务进程,并将处理业务进程所产生的数据和/或文件进程存储。
本发明实施例通过当主设备不能够运行被监控业务进程时,通过备用设备来代替主设备进行工作,从而保证了被监控业务进程的正常运行,提高了数据传输及业务处理的可靠性。
在上述实施例的基础上,所述将对所述业务进程对应的数据进行存储,包括:
若所述主设备的数据库和磁盘为可访问状态,则所述备用设备将所述业务进程对应的数据存储到所述主设备的数据库中,将所述业务进程对应的文件存储到所述主设备的磁盘中,并将所述数据和所述文件同步到所述备用设备中;
若所述主设备的数据库和磁盘为不可访问状态,则所述备用设备将所述业务进程对应的数据存储到所述备用设备的数据库中,将所述业务进程对应的文件存储到所述备用设备的磁盘中,其中,所述业务进程包括所述被监控业务进程。
具体的,当切换为备用设备处理业务进程时,备用设备优先访问主设备的数据库和磁盘,在主设备只是不能够运行被监控业务进程,但是其数据库及磁盘仍然处于存活状态,此时,主设备的数据库和磁盘是可以被访问的,因此,备用设备将处理业务进程获得的数据存储到主设备的数据库中,将获得的文件存储到主设备的磁盘中。并且,同时,还需要将数据同步到备用设备的数据库上,将文件同步到备用设备的磁盘上。
如果备用设备不能够访问主设备的数据库和磁盘,此时,备用设备才会访问本地的数据库和磁盘,因此,备用设备将处理业务进程获得的数据存储到该备用设备的数据库中,并将获得的文件存储到备用设备的磁盘中。
本发明实施例通过备用设备在工作时,优先访问主设备的数据库和磁盘,当主设备的数据库和磁盘不可访问时,才访问本地数据库和磁盘,从而,最大限度的保证了数据的一致性。
在上述各实施例的基础上,图3为本发明另一实施例提供的一种高可用设备切换装置结构示意图,如图3所示,所述装置,包括:监控模块301、切换模块302、存储模块303、第一比较模块304和第二比较模块305,其中:
第一比较模块304用于根据第一预设周期对所述主设备的数据库和所述备用设备的数据库中的数据进行一致性比较,若判断获知所述主设备的数据库和所述备用设备的数据库中的数据不一致,则发出告警;
第二比较模块305用于根据分时延迟策略对所述主设备的磁盘上存储的文件和所述备用设备的磁盘上存储的文件进行比较。
具体的,监控模块301、切换模块302和存储模块303与上述实施例一致此处不再赘述。为了保证主设备和备用设备中存储的数据的一致性,需要第一比较模块304定时对主设备的数据库和备用设备的数据库进行一致性比较,如果经过一致性比较发现不一致,则发出告警,通知管理人员进行处理,可以理解的是,主设备也可以先尝试进行修复,如果修复失败,再发出告警。其中,发出告警的方式可以是向预先设定的管理人员发送邮件告知,以便管理人员能够及时处理。
为了保证主设备的磁盘和备用设备的磁盘上存储的文件的一致性,需要第二比较模块305定时进行比较,其中,对磁盘上的文件进行一致性比较采用的方式为分时延迟策略。
本发明实施例通过定时对数据库中的数据和磁盘中的文件进行一致性比较,从而保证了主设备和备用设备上的数据及文件的一致性。
在上述实施例的基础上,所述第二比较模块,具体用于:
根据第二预设时间段和延时时间,获取所述主设备的磁盘上在对应时间段内进行过修改的所有文件的第一MD5值及所述备用设备的磁盘上的在所述对应时间段进行过修改的所有文件的第二MD5值;
将目标第一MD5值与所述第二MD5值一一匹配,若判断获知匹配失败,则将所述目标第一MD5值对应的文件复制到所述备用设备的磁盘中。
具体的,由于主设备和备用设备可以互相访问,因此,第二比较模块可以从备用设备的磁盘中获取到所有文件的文件信息,因此,根据第二预设时间段和延时时间,以第二预设时间段为周期,每次都获取对应时间段内主设备的磁盘上的所有文件的第一MD5值,且获取的时间要晚于对应时间段。第二比较模块依次对从主设备的磁盘上获取到的文件的第一MD5值进行匹配,即从多个第一MD5值中任意选取一个作为目标第一MD5值,将目标第一MD5值与所有的第二MD5值进行匹配,如果在所有的第二MD5值中有一个与目标第一MD5值相同,则说明匹配成功,则该目标第一MD5值对应的文件已经在备用设备的磁盘中存在。如果在所有的第二MD5值中都没有与目标第一MD5值相等,则说明匹配失败,备用设备的磁盘中没有存储该目标第一MD5值对应的文件,因此,需要将该目标第一MD5值对应的文件复制到备用设备的磁盘中。
本发明实施例通过若判断获知目标被监控业务进程运行异常,且连续重新启动了预设次数,该目标被监控业务进程仍然运行异常,则停止向备用设备发送心跳信息,以使得备用设备代替主设备处理所有的业务进程,因此,在主设备系统状态正常但是被监控业务进程运行异常时,进行设备切换,保证了被监控业务进程的正常运行,提高了数据传输及业务处理的可靠性。
图4为本发明实施例提供的电子设备实体结构示意图,如图4所示,所述电子设备,包括:处理器(processor)401、存储器(memory)402和总线403;其中,
所述处理器401和存储器402通过所述总线403完成相互间的通信;
所述处理器401用于调用所述存储器402中的程序指令,以执行上述各方法实施例所提供的方法,例如包括:实时对所有的被监控业务进程进行监控,其中,所述被监控业务进程由预先设定;若判断获知目标被监控业务进程运行异常,且连续重新启动了预设次数,所述目标被监控业务进程仍然运行异常,则停止向备用设备发送心跳信息,以使得所述备用设备若判断获知在第一预设时间段内没有接收到主设备发送的所述心跳信息,则代替所述主设备处理业务进程。
本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:实时对所有的被监控业务进程进行监控,其中,所述被监控业务进程由预先设定;若判断获知目标被监控业务进程运行异常,且连续重新启动了预设次数,所述目标被监控业务进程仍然运行异常,则停止向备用设备发送心跳信息,以使得所述备用设备若判断获知在第一预设时间段内没有接收到主设备发送的所述心跳信息,则代替所述主设备处理业务进程。
本实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行上述各方法实施例所提供的方法,例如包括:实时对所有的被监控业务进程进行监控,其中,所述被监控业务进程由预先设定;若判断获知目标被监控业务进程运行异常,且连续重新启动了预设次数,所述目标被监控业务进程仍然运行异常,则停止向备用设备发送心跳信息,以使得所述备用设备若判断获知在第一预设时间段内没有接收到主设备发送的所述心跳信息,则代替所述主设备处理业务进程。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所描述的装置等实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种高可用设备切换方法,其特征在于,包括:
实时对所有的被监控业务进程进行监控,其中,所述被监控业务进程由预先设定;
若判断获知目标被监控业务进程运行异常,且连续重新启动了预设次数,所述目标被监控业务进程仍然运行异常,则停止向备用设备发送心跳信息,以使得所述备用设备若判断获知在第一预设时间段内没有接收到主设备发送的所述心跳信息,则代替所述主设备处理业务进程;其中,
所述备用设备若判断获知在第一预设时间段内没有接收到主设备发送的所述心跳信息,则代替所述主设备处理业务进程,具体包括:
所述备用设备若判断获知在第一预设时间段内没有接收到主设备发送的所述心跳信息,则所述备用设备继续执行所述主设备上所有的所述业务进程,并将对所述业务进程对应的数据和/或文件进行存储;其中,
所述将对所述业务进程对应的数据和/或文件进行存储,具体包括:
若所述主设备的数据库和磁盘为可访问状态,则所述备用设备将所述业务进程对应的数据存储到所述主设备的数据库中,将所述业务进程对应的文件存储到所述主设备的磁盘中,并将所述数据和所述文件同步到所述备用设备中;
若所述主设备的数据库和磁盘为不可访问状态,则所述备用设备将所述业务进程对应的数据存储到所述备用设备的数据库中,将所述业务进程对应的文件存储到所述备用设备的磁盘中,其中,所述业务进程包括所述被监控业务进程。
2.根据权利要求1所述的方法,其特征在于,所述方法,还包括:
将主设备处理的所有所述业务进程对应的数据存储到所述主设备的数据库中,同时,将所述数据同步到所述备用设备的数据库中;和/或
将主设备处理的所有业务进程对应的文件存储到所述主设备的磁盘中,同时,将所述文件同步到所述备用设备的磁盘中。
3.根据权利要求1或2所述的方法,其特征在于,所述方法,还包括:
根据第一预设周期对所述主设备的数据库和所述备用设备的数据库中的数据进行一致性比较,若判断获知所述主设备的数据库和所述备用设备的数据库中的数据不一致,则发出告警;
根据分时延迟策略对所述主设备的磁盘上存储的文件和所述备用设备的磁盘上存储的文件进行比较。
4.根据权利要求3所述的方法,其特征在于,所述根据分时延迟策略对所述主设备的磁盘上存储的文件和所述备用设备的磁盘上存储的文件进行比较,包括:
根据第二预设时间段和延时时间,获取所述主设备的磁盘上在对应时间段内进行过修改的所有文件的第一MD5值及所述备用设备的磁盘上的在所述对应时间段进行过修改的所有文件的第二MD5值;
将目标第一MD5值与所述第二MD5值一一匹配,若判断获知匹配失败,则将所述目标第一MD5值对应的文件复制到所述备用设备的磁盘中。
5.一种高可用设备切换装置,其特征在于,包括:
监控模块,用于实时对所有的被监控业务进程进行监控,其中,所述被监控业务进程由预先设定;
切换模块,用于若判断获知目标被监控业务进程运行异常,且连续重新启动了预设次数,所述目标被监控业务进程仍然运行异常,则停止向备用设备发送心跳信息,以使得所述备用设备若判断获知在第一预设时间段内没有接收到主设备发送的所述心跳信息,则代替所述主设备处理业务进程;其中,
所述备用设备若判断获知在第一预设时间段内没有接收到主设备发送的所述心跳信息,则代替所述主设备处理业务进程,包括:
所述备用设备若判断获知在第一预设时间段内没有接收到主设备发送的所述心跳信息,则所述备用设备继续执行所述主设备上所有的所述业务进程,并将对所述业务进程对应的数据和/或文件进行存储;其中,
所述将对所述业务进程对应的数据进行存储,包括:
若所述主设备的数据库和磁盘为可访问状态,则所述备用设备将所述业务进程对应的数据存储到所述主设备的数据库中,将所述业务进程对应的文件存储到所述主设备的磁盘中,并将所述数据和所述文件同步到所述备用设备中;
若所述主设备的数据库和磁盘为不可访问状态,则所述备用设备将所述业务进程对应的数据存储到所述备用设备的数据库中,将所述业务进程对应的文件存储到所述备用设备的磁盘中,其中,所述业务进程包括所述被监控业务进程。
6.根据权利要求5所述的装置,其特征在于,所述装置,还包括:
存储模块,用于将主设备处理的所有所述业务进程对应的数据存储到所述主设备的数据库中,同时,将所述数据同步到所述备用设备的数据库中;和/或
将主设备处理的所有业务进程对应的文件存储到所述主设备的磁盘中,同时,将所述文件同步到所述备用设备的磁盘中。
7.根据权利要求5或6所述的装置,其特征在于,所述装置,还包括:
第一比较模块,用于根据第一预设周期对所述主设备的数据库和所述备用设备的数据库中的数据进行一致性比较,若判断获知所述主设备的数据库和所述备用设备的数据库中的数据不一致,则发出告警;
第二比较模块,用于根据分时延迟策略对所述主设备的磁盘上存储的文件和所述备用设备的磁盘上存储的文件进行比较。
8.根据权利要求7所述的装置,其特征在于,所述第二比较模块,具体用于:
根据第二预设时间段和延时时间,获取所述主设备的磁盘上在对应时间段内进行过修改的所有文件的第一MD5值及所述备用设备的磁盘上的在所述对应时间段进行过修改的所有文件的第二MD5值;
将目标第一MD5值与所述第二MD5值一一匹配,若判断获知匹配失败,则将所述目标第一MD5值对应的文件复制到所述备用设备的磁盘中。
9.一种电子设备,其特征在于,包括:处理器、存储器和总线,其中,
所述处理器和所述存储器通过所述总线完成相互间的通信;
所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行如权利要求1-4任一项所述的方法。
10.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如权利要求1-4任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710606323.9A CN107480014B (zh) | 2017-07-24 | 2017-07-24 | 一种高可用设备切换方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710606323.9A CN107480014B (zh) | 2017-07-24 | 2017-07-24 | 一种高可用设备切换方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107480014A CN107480014A (zh) | 2017-12-15 |
CN107480014B true CN107480014B (zh) | 2021-01-01 |
Family
ID=60595949
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710606323.9A Active CN107480014B (zh) | 2017-07-24 | 2017-07-24 | 一种高可用设备切换方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107480014B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111209265B (zh) * | 2018-11-22 | 2023-11-17 | 华为技术有限公司 | 一种数据库切换方法和终端设备 |
CN110515776B (zh) * | 2019-08-30 | 2023-01-31 | 南京图格医疗科技有限公司 | 一种双机备份系统及备份方法 |
CN112751772B (zh) * | 2019-10-31 | 2023-01-24 | 上海哔哩哔哩科技有限公司 | 数据传输方法和系统 |
CN112988243B (zh) * | 2019-12-02 | 2022-12-27 | 中国移动通信集团浙江有限公司 | 设备切换方法、装置及计算设备 |
CN111045872B (zh) * | 2019-12-02 | 2023-11-07 | 上海英方软件股份有限公司 | 一种实现高可用自我保护机制的方法及系统 |
CN111258823A (zh) * | 2020-01-17 | 2020-06-09 | 青梧桐有限责任公司 | 一种主从服务器的切换方法及系统 |
CN112181512B (zh) * | 2020-09-14 | 2022-11-11 | 锐捷网络股份有限公司 | 一种业务进程管理方法、装置、电子设备及存储介质 |
CN112685236A (zh) * | 2020-12-31 | 2021-04-20 | 科华恒盛股份有限公司 | 数据管理系统的双机互备方法及系统 |
CN114640574B (zh) * | 2022-02-28 | 2023-11-28 | 天翼安全科技有限公司 | 一种主备设备的切换方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101060391A (zh) * | 2007-05-16 | 2007-10-24 | 华为技术有限公司 | 主备服务器切换方法及系统及主用服务器、备用服务器 |
CN102404386A (zh) * | 2012-01-09 | 2012-04-04 | 无锡城市云计算中心有限公司 | 一种保证分布式文件系统元数据服务器组的服务高可靠的方法 |
CN103384212A (zh) * | 2013-07-24 | 2013-11-06 | 佳都新太科技股份有限公司 | 一种通信应用系统双机高可用方案及其实现 |
CN103441863A (zh) * | 2013-08-08 | 2013-12-11 | 中国民航大学 | 一种空管自动化系统中的双服务器热备系统及控制方法 |
CN103546914A (zh) * | 2013-10-21 | 2014-01-29 | 大唐移动通信设备有限公司 | 一种hss主备管理的方法及装置 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101876924B (zh) * | 2009-04-30 | 2013-10-30 | 升东网络科技发展(上海)有限公司 | 数据库故障自动检测及转移方法 |
CN101729290A (zh) * | 2009-11-04 | 2010-06-09 | 中兴通讯股份有限公司 | 用于实现业务系统保护的方法及装置 |
US8495413B2 (en) * | 2009-12-15 | 2013-07-23 | Unisys Corporation | System and method for providing a computer standby node |
CN103106156A (zh) * | 2011-11-10 | 2013-05-15 | 辉达公司 | 用于控制硬盘宿主设备数据读取方式的装置和方法 |
CN103136070B (zh) * | 2011-11-30 | 2015-08-05 | 阿里巴巴集团控股有限公司 | 一种数据容灾处理的方法和装置 |
JP5830042B2 (ja) * | 2013-02-13 | 2015-12-09 | 日本電信電話株式会社 | 二重更新防止システム及び二重更新防止方法 |
US10025655B2 (en) * | 2014-06-26 | 2018-07-17 | Hitachi, Ltd. | Storage system |
-
2017
- 2017-07-24 CN CN201710606323.9A patent/CN107480014B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101060391A (zh) * | 2007-05-16 | 2007-10-24 | 华为技术有限公司 | 主备服务器切换方法及系统及主用服务器、备用服务器 |
CN102404386A (zh) * | 2012-01-09 | 2012-04-04 | 无锡城市云计算中心有限公司 | 一种保证分布式文件系统元数据服务器组的服务高可靠的方法 |
CN103384212A (zh) * | 2013-07-24 | 2013-11-06 | 佳都新太科技股份有限公司 | 一种通信应用系统双机高可用方案及其实现 |
CN103441863A (zh) * | 2013-08-08 | 2013-12-11 | 中国民航大学 | 一种空管自动化系统中的双服务器热备系统及控制方法 |
CN103546914A (zh) * | 2013-10-21 | 2014-01-29 | 大唐移动通信设备有限公司 | 一种hss主备管理的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN107480014A (zh) | 2017-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107480014B (zh) | 一种高可用设备切换方法及装置 | |
US10152382B2 (en) | Method and system for monitoring virtual machine cluster | |
CN110798375B (zh) | 一种增强容器集群高可用性的监控方法、系统及终端设备 | |
EP3142011B9 (en) | Anomaly recovery method for virtual machine in distributed environment | |
US10831622B2 (en) | Method and apparatus for processing gateway device fault | |
WO2017067484A1 (zh) | 一种虚拟化数据中心调度系统和方法 | |
US9164864B1 (en) | Minimizing false negative and duplicate health monitoring alerts in a dual master shared nothing database appliance | |
CN106960060B (zh) | 一种数据库集群的管理方法及装置 | |
CN111385107B (zh) | 一种服务器的主备切换处理方法及装置 | |
CN106940671B (zh) | 一种集群中任务线程运行的监控方法、装置及系统 | |
CN109361542A (zh) | 客户端的故障处理方法、装置、系统、终端和服务器 | |
CN109257396B (zh) | 一种分布式锁调度方法及装置 | |
CN111897697A (zh) | 服务器硬件故障修复方法和装置 | |
CN103902401A (zh) | 基于监控的虚拟机容错方法及装置 | |
CN111538585A (zh) | 一种基于node.js的服务器进程调度方法、系统和装置 | |
EP3591530A1 (en) | Intelligent backup and recovery of cloud computing environment | |
US10860411B2 (en) | Automatically detecting time-of-fault bugs in cloud systems | |
CN113986450A (zh) | 一种虚拟机备份方法及装置 | |
US7519857B2 (en) | Method, apparatus, and system for a software based business continuity solution for a computing environment | |
CN117370316A (zh) | 数据库的高可用管理方法和装置、电子设备及存储介质 | |
CN109510867B (zh) | 数据请求处理的方法、装置、存储介质及电子设备 | |
US8533331B1 (en) | Method and apparatus for preventing concurrency violation among resources | |
CN117395263B (zh) | 一种数据同步方法、装置、设备和存储介质 | |
CN114363356B (zh) | 数据同步方法、系统、装置、计算机设备和存储介质 | |
CN112732809B (zh) | 一种etl系统及基于etl系统的数据处理方法 |
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 | ||
CB02 | Change of applicant information |
Address after: 100088 Building 3 332, 102, 28 Xinjiekouwai Street, Xicheng District, Beijing Applicant after: Qianxin Technology Group Co.,Ltd. Address before: 100015 Jiuxianqiao Chaoyang District Beijing Road No. 10, building 15, floor 17, layer 1701-26, 3 Applicant before: Beijing Qi'anxin Technology Co.,Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |