任务同步方法、装置、主备系统和存储介质制造方法及图纸

技术编号:32926620 阅读:15 留言:0更新日期:2022-04-07 12:17
本申请提供一种任务同步方法、装置、主备系统和存储介质,所述方法应用于主备系统中的备用设备,主备系统还包括主设备,主设备上设置有任务队列,备用设备上设置有镜像任务队列,任务队列与镜像任务队列实时同步,所述方法包括:当确定发生主备切换时,从镜像任务队列中获取任务;根据预先确定的任务对应的任务状态表处理任务,从而实现在主备切换后,可以继续执行原主设备正在执行或等待执行的任务,无需重新下发对应的任务,提高了主备系统的实用性。用性。用性。

【技术实现步骤摘要】
任务同步方法、装置、主备系统和存储介质


[0001]本申请涉及计算机领域,具体而言,涉及一种任务同步方法、装置、主备系统和存储介质。

技术介绍

[0002]随着计算机领域的不断发展,越来越多的设备在部署时,采用主备部署方式。主设备对外提供服务,备设备处于待命状态。在主设备故障时,备设备接管成为主,对外提供服务。但现有的主备系统在主备切换后,可能会导致原本主设备上正在执行的或者等待执行的任务丢失,导致先前下发的任务无法完成,需要重新下发对应任务。

技术实现思路

[0003]本申请实施例的目的在于提供一种任务同步方法、装置、主备系统和存储介质,用以解决现有主备系统在主备切换后,原本正在执行或等待执行的任务无法继续执行,需要重新下发对应任务的问题。
[0004]第一方面,本申请提供一种任务同步方法,应用于主备系统中的备用设备,所述主备系统还包括主设备,所述主设备上设置有任务队列,所述备用设备上设置有镜像任务队列,所述任务队列与所述镜像任务队列实时同步,所述方法包括:当确定发生主备切换时,从所述镜像任务队列中获取任务;根据预先确定的所述任务对应的任务数据处理所述任务。
[0005]在本申请实施例中,通过在主设备上设置任务队列,在备用设备上设置镜像任务队列,任务队列与镜像任务队列实时同步,在确定发生主备切换时,切换为主设备的原备用设备从镜像任务队列中获取任务,然后根据预先确定的该任务对应的任务数据处理该任务,从而实现在主备切换后,可以继续执行原主设备正在执行或等待执行的任务,无需重新下发对应的任务,提高了主备系统的实用性。
[0006]在可选的实施方式中,确定所述任务对应的任务数据的步骤包括:接收所述主设备发送的任务状态表,所述任务状态表包括所述主设备上所有任务对应的任务数据;根据所述任务的任务ID从所述主设备发送的任务状态表中确定所述任务对应的任务数据。
[0007]在本申请实施例中,对应每个任务,都会在任务状态表中构建一条任务数据,该任务状态表保存在主设备的数据库中。切换为主设备的原备用设备可以根据任务的任务ID从该任务状态表中确定任务对应的任务数据,进而根据任务数据处理该任务。
[0008]在可选的实施方式中,所述根据预先确定的所述任务对应的任务数据处理所述任务,包括:根据所述任务对应的任务数据确定所述任务的任务状态信息;当确定所述任务状态信息为排队状态时,从所述任务的起始步骤执行所述任务;当确定所述任务状态信息为执行状态时,从所述任务对应的任务数据中查询所述任务对应的步骤信息,根据所述步骤信息处理所述任务。
[0009]在本申请实施例中,根据任务数据中的任务状态信息,确定任务的所处的当前状
态,进而根据任务状态信息处理该任务。
[0010]在可选的实施方式中,所述任务对应多个步骤,每个步骤对应一个步骤编号,每个步骤编号对应一个运行函数和一个回滚函数,所述根据所述步骤信息处理所述任务,包括:根据所述步骤信息确定所述任务的当前步骤的步骤编号;执行所述任务的当前步骤的步骤编号对应的回滚函数;依次执行所述任务的当前步骤的步骤编号对应的运行函数和当前步骤之后的各个步骤的步骤编号对应的运行函数。
[0011]本申请实施例中,任务数据中还可以包括步骤信息,当原主设备执行一个步骤的运行函数时,会将该任务的步骤信息更新为正在执行的步骤的步骤编号。当发生主备切换后,切换为主设备的原备用设备根据步骤信息可以确定该任务的当前步骤的步骤编号。由于原主设备在执行该步骤时发生了主备切换,为了保证该任务的正常执行,切换为主设备的原备用设备执行任务的当前步骤的步骤编号对应的回滚函数,将任务恢复到当前步骤未执行的状态,然后依次执行任务的当前步骤的步骤编号对应的运行函数和当前步骤之后的各个步骤的步骤编号对应的运行函数,从而实现对该任务的处理。
[0012]在可选的实施方式中,所述方法还包括:在执行所述任务的运行函数时,将所述任务对应的步骤信息更新为该运行函数对应的步骤编号。
[0013]第二方面,本申请提供一种任务同步方法,应用于主备系统中的主设备,所述主备系统还包括备用设备,所述主设备上设置有任务队列,所述备用设备上设置有镜像任务队列,所述方法包括:获取用户发送任务;将所述任务存入所述任务队列;将所述任务队列中保存的任务实时同步到所述镜像任务队列。
[0014]第三方面,本申请提供一种任务同步装置,应用于主备系统中的备用设备,所述主备系统还包括主设备,所述主设备上设置有任务队列,所述备用设备上设置有镜像任务队列,所述任务队列与所述镜像任务队列实时同步,所述装置包括:第一获取模块,用于在确定发生主备切换时,从所述镜像任务队列中获取任务;处理模块,用于根据预先确定的所述任务对应的任务数据处理所述任务。
[0015]在可选的实施方式中,所述装置还包括确定模块,用于接收所述主设备发送的任务状态表,所述任务状态表包括所述主设备上所有任务对应的任务数据;根据所述任务的任务ID从所述主设备发送的任务状态表中确定所述任务对应的任务数据。
[0016]在可选的实施方式中,所述处理模块具体用于根据所述任务对应的任务数据确定所述任务的任务状态信息;当确定所述任务状态信息为排队状态时,从所述任务的起始步骤执行所述任务;当确定所述任务状态信息为执行状态时,从所述任务对应的任务数据中查询所述任务对应的步骤信息,根据所述步骤信息处理所述任务。
[0017]在可选的实施方式中,所述任务对应多个步骤,每个步骤对应一个步骤编号,每个步骤编号对应一个运行函数和一个回滚函数,所述处理模块具体用于根据所述步骤信息确定所述任务的当前步骤的步骤编号;执行所述任务的当前步骤的步骤编号对应的回滚函数;依次执行所述任务的当前步骤的步骤编号对应的运行函数和当前步骤之后的各个步骤的步骤编号对应的运行函数。
[0018]在可选的实施方式中,所述处理模块还用于在执行所述任务的运行函数时,将所述任务对应的步骤信息更新为该运行函数对应的步骤编号。
[0019]第四方面,本申请提供一种任务同步装置,应用于主备系统中的主设备,所述主备
系统还包括备用设备,所述主设备上设置有任务队列,所述备用设备上设置有镜像任务队列,所述装置包括:第二获取模块,用于获取用户发送任务;存入模块,用于将所述任务存入所述任务队列;同步模块,用于将所述任务队列中保存的任务实时同步到所述镜像任务队列。
[0020]第五方面,本申请提供一种主备系统,所述系统包括:主设备,所述主设备上设置有任务队列,用于存储任务信息;备用设备,所述备用设备上设置有镜像任务队列,用于实时同步所述任务队列中的任务信息;所述主设备用于执行如前述第二方面所述的方法;所述备用设备用于执行如前述第一方面所述的方法。
[0021]第六方面,本申请提供一种存储介质,所述存储介质上存储有计算机程序指令,所述计算机程序指令被计算机读取并运行时,执行如前述实施方式任一项所述的方法。
附图说明
[0022]为了更清楚地说明本申请实施例本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种任务同步方法,其特征在于,应用于主备系统中的备用设备,所述主备系统还包括主设备,所述主设备上设置有任务队列,所述备用设备上设置有镜像任务队列,所述任务队列与所述镜像任务队列实时同步,所述方法包括:当确定发生主备切换时,从所述镜像任务队列中获取任务;根据预先确定的所述任务对应的任务数据处理所述任务。2.根据权利要求1所述的方法,其特征在于,确定所述任务对应的任务数据的步骤包括:接收所述主设备发送的任务状态表,所述任务状态表包括所述主设备上所有任务对应的任务数据;根据所述任务的任务ID从所述主设备发送的任务状态表中确定所述任务对应的任务数据。3.根据权利要求2所述的方法,其特征在于,所述根据预先确定的所述任务对应的任务数据处理所述任务,包括:根据所述任务对应的任务数据确定所述任务的任务状态信息;当确定所述任务状态信息为排队状态时,从所述任务的起始步骤执行所述任务;当确定所述任务状态信息为执行状态时,从所述任务对应的任务数据中查询所述任务对应的步骤信息,根据所述步骤信息处理所述任务。4.根据权利要求3所述的方法,其特征在于,所述任务对应多个步骤,每个步骤对应一个步骤编号,每个步骤编号对应一个运行函数和一个回滚函数,所述根据所述步骤信息处理所述任务,包括:根据所述步骤信息确定所述任务的当前步骤的步骤编号;执行所述任务的当前步骤的步骤编号对应的回滚函数;依次执行所述任务的当前步骤的步骤编号对应的运行函数和当前步骤之后的各个步骤的步骤编号对应的运行函数。5.根据权利要求4所述的方法,其特征在于,所述方法还包括:在执行所述任务的运行函数时,将所述任务对应的步骤信息更新为该运行函数对应的步骤编号。6...

【专利技术属性】
技术研发人员:杨阳王真
申请(专利权)人:山石网科通信技术股份有限公司
类型:发明
国别省市:

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

1