故障恢复方法和用于故障恢复的设备技术

技术编号:7180272 阅读:323 留言:0更新日期:2012-04-11 18:40
本发明专利技术实施例提供了故障恢复方法和用于故障恢复的设备。一种故障恢复方法包括:第一设备加载工作实例的配置文件以运行所述工作实例;所述第一设备向第二设备发送所述配置文件,以使所述第二设备在确定所述第一设备无法运行所述工作实例时,根据所述配置文件运行所述工作实例。本发明专利技术实施例还提供了用于故障恢复的设备。根据上述技术方案,第一设备通过向第二设备发送配置文件,可以使第二设备对第一设备中出现故障的工作实例进行恢复,从而能够对工作实例进行有效容错,具有高可用性,避免单点故障造成工作实例运行的中断。

【技术实现步骤摘要】

本专利技术涉及计算机领域,并且更具体地,涉及计算机领域中的故障恢复方法和用于故障恢复的设备
技术介绍
随着用户数的大幅增长和信息量的巨大增加,在许多行业里,尤其是电信业里,信息技术anformation Technology, IT)系统除了要求极大的处理能力之外,也越来越要求有极高的容错能力。即使面对海量的数据和并发处理,也要达到高可用的目标。当运行的工作实例发生故障时,现有的信息技术系统往往会重新运行该工作实例。然而,由于种种原因,重新运行可能会发生失败,由此导致发生故障的工作实例无法得到及时的恢复。
技术实现思路
本专利技术提供了故障恢复方法和用于故障恢复的设备,解决了现有技术中故障恢复的局限性问题,能够对工作实例进行有效容错,具有高可用性。一方面,本专利技术提供了一种故障恢复方法,包括第一设备加载工作实例的配置文件以运行所述工作实例;所述第一设备向第二设备发送所述配置文件,以使所述第二设备在确定所述第一设备无法运行所述工作实例时,根据所述配置文件运行所述工作实例。另一方面,本专利技术提供了一种故障恢复方法,包括第二设备从第一设备接收并存储所述第一设备运行的工作实例的配置文件;所述第二设备在确定所述第一设备无法运行所述工作实例时,根据所述配置文件运行所述工作实例。再一方面,本专利技术提供了一种用于故障恢复的设备,包括加载模块,用于加载工作实例的配置文件以运行所述工作实例;第一发送模块,用于向另一设备发送所述配置文件,以使所述另一设备在确定所述设备无法运行所述工作实例时,根据所述配置文件运行所述工作实例。又一方面,本专利技术提供了一种用于故障恢复的设备,包括第一接收模块,用于从另一设备接收并存储所述另一设备运行的工作实例的配置文件;恢复模块,用于在确定所述另一设备无法运行所述工作实例时,根据所述配置文件运行所述工作实例。根据上述技术方案,通过利用工作实例的配置文件,可以在异地对出现故障的工作实例进行恢复,从而能够对工作实例进行有效容错,具有高可用性,避免单点故障造成工作实例运行的中断。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是根据本专利技术实施例的故障恢复方法的流程图。图2是根据本专利技术实施例的另一故障恢复方法的流程图。图3是在分布式系统中进行故障恢复的例子的示意图。图4是在图3所示的例子中进行故障恢复的流程图。图5是在图3所示的例子中进行故障恢复的时序图。图6是根据本专利技术实施例的用于故障恢复的设备的结构框图。图7是根据本专利技术实施例的用于故障恢复的另一设备的结构框图。图8是根据本专利技术实施例的用于故障恢复的再一设备的结构框图。图9是根据本专利技术实施例的用于故障恢复的又一设备的结构框图。具体实施例方式下面将结合本专利技术实施例中的附图,对本专利技术实施例的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术的一部分实施例,而不是全部实施例。根据本专利技术中的所述实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本专利技术保护的范围。首先,结合图1描述根据本专利技术实施例的故障恢复方法100。如图1所示,故障恢复方法100包括在SllO中,第一设备加载工作实例的配置文件以运行工作实例;在S120中,第一设备向第二设备发送配置文件,以使第二设备在确定第一设备无法运行工作实例时,根据配置文件运行工作实例。方法100由第一设备执行。第一设备和第二设备可以是分布式系统中的两个设备,它们可以协同完成相同的任务,也可以完成不同的任务。第一设备和第二设备之间可以是主-从(master-slave)关系,当作为主设备的第一设备发生故障时,作为从设备的第二设备可以接手工作。第一设备和第二设备也可以是对等(peer-to-peer)关系,相互之间可以进行备份,当某个设备有故障时,其他设备接手其工作。本专利技术不对第一设备和第二设备之间的关系进行限定。在第一设备和第二设备中都可以运行工作实例。工作实例的运行需要由设备加载该工作实例的配置文件。在第一设备中运行有至少一个工作实例,在第二设备中是否有工作实例运行不作限制。假设,在第一设备中运行有工作实例Al,第一设备由于硬件问题、软件问题等而致使工作实例Al的运行出现故障,导致工作实例Al不能继续运行下去。为了解决工作实例Al出现的故障,第一设备可以将工作实例Al的配置文件发送给第二设备,这样第二设备可以在工作实例Al出现故障时,通过获取的工作实例Al的配置文件而在第二设备上恢复工作实例Al,使得工作实例Al作为第二设备上新建的工作实例 Bl而继续运行下去。这样,通过利用配置文件而在异地恢复工作实例,可以实现对工作实例的有效容错,具有高可用性,避免单点故障造成工作实例运行的中断。接下来,详细描述根据本专利技术实施例的SllO至S120。在SllO中,第一设备通过加载工作实例的配置文件,可以在第一设备中运行该工作实例。加载配置文件的过程与现有技术相同,不再赘述。在S120中,第一设备可以将工作实例的配置文件发送给第二设备,这样如果工作实例出现故障而不能在第一设备中正常运行时,第二设备可以通过加载从第一设备获取的配置文件来运行相应工作实例,从而实现对有故障的工作实例的错误恢复。根据本专利技术的实施例,当第一设备中运行的某个工作实例(用工作实例Al表示) 出现故障时,第一设备可以首先尝试在第一设备内恢复该工作实例。这样,如果在第一设备中恢复工作实例Al成功,则无需第二设备根据配置文件在异地进行恢复了。但是,也有可能第一设备在本地恢复工作实例Al失败。在该情况下,需要在第二设备上进行工作实例的异地恢复。根据本专利技术的一个实施例,第一设备在恢复工作实例Al 失败时,可以将工作实例Al的状态改变为用于指示第一设备无法运行工作实例Al的状态, 以使第二设备根据该状态确定第一设备无法运行工作实例Al。在本专利技术的另一实施例中, 第一设备在恢复工作实例Al失败时,可以向第二设备发送用于请求第二设备运行工作实例Al的请求信息,以使第二设备根据请求信息确定第一设备无法运行工作实例Al。这样, 第二设备在确定工作实例Al不能在第一设备中正常运行的情况下,可以根据获取的工作实例Al的配置文件在第二设备中进行故障恢复。对工作实例的恢复可以通过继续执行工作实例的后续过程实现,也可以通过重新执行工作实例Al的全过程实现,还可以通过本领域技术人员可以想到的其他方式实现。当工作实例出现故障时,优先本地恢复,再进行异地恢复,可以尽量不改变工作实例的运行环境,不因故障的产生而对系统产生较大的影响。通过本地恢复和异地恢复相结合的方式,可以提高容错的有效性,避免单一容错方式下不能有效进行故障恢复。从而,通过本地恢复和异地恢复相结合的方式,可以提高容错的效率和成功率。此外,当需要进行异地恢复时,第一设备可以主动向第二设备发送请求信息以使第二设备进行故障恢复;第一设备也可以仅改变工作实例的状态,而由第二设备主动发现故障的存在而进行异地恢复。这样,可以通过灵活的方式便捷地进行异地恢复,实现简单。在具体实现过程中,第一设备可定期向第二设备上报第一设备上本文档来自技高网...

【技术保护点】
1.一种故障恢复方法,其特征在于,包括:第一设备加载工作实例的配置文件以运行所述工作实例;所述第一设备向第二设备发送所述配置文件,以使所述第二设备在确定所述第一设备无法运行所述工作实例时,根据所述配置文件运行所述工作实例。

【技术特征摘要】

【专利技术属性】
技术研发人员:孙奇辉
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:94

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1