CN113778744B - 任务处理方法、设备、***以及存储介质 - Google Patents
任务处理方法、设备、***以及存储介质 Download PDFInfo
- Publication number
- CN113778744B CN113778744B CN202110008134.8A CN202110008134A CN113778744B CN 113778744 B CN113778744 B CN 113778744B CN 202110008134 A CN202110008134 A CN 202110008134A CN 113778744 B CN113778744 B CN 113778744B
- Authority
- CN
- China
- Prior art keywords
- state
- task
- data backup
- server
- data
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 33
- 238000013475 authorization Methods 0.000 claims abstract description 124
- 238000012790 confirmation Methods 0.000 claims abstract description 26
- 238000000034 method Methods 0.000 claims description 54
- 238000012545 processing Methods 0.000 claims description 42
- 238000012544 monitoring process Methods 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 3
- 238000007726 management method Methods 0.000 description 31
- 238000012360 testing method Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 4
- 238000013500 data storage Methods 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Hardware Redundancy (AREA)
Abstract
本申请提供一种任务处理方法、设备、***以及存储介质,包括获取其他服务器在执行数据备份任务时的运行状态,若运行状态为故障状态根据数据备份任务的任务标识生成授权请求,向中央服务器发送授权请求,以使中央服务器在确定与数据备份任务关联的授权标识指示的状态为解锁状态时生成确认授权信息,若接收到中央服务器发送的确认授权信息则执行数据备份任务。本方案监控其他服务器在执行数据备份任务时运行状态,当出现故障时及时竞争执行该数据备份任务,可以保证在本次备份周期内数据备份有效性。
Description
技术领域
本申请涉及数据库技术领域,尤其涉及一种任务处理方法、设备、***以及存储介质。
背景技术
数据服务器集群用于为用户提供海量数据存储和读取操作。通常情况下,需要定期将数据服务器集群中各个数据服务器的数据进行备份,以防止数据服务器出现故障后数据丢失。
作为其中一种数据备份方案,通过中心管理节点连接到数据服务器的控制端,由中心管理节点向数据服务器的控制端下达备份指令,调用mysqldump、xtrabackup等指令执行数据备份。作为另外一种备份方案,在数据服务器使用crontab部署定时任务脚本,以调用mysqldump、xtrabackup执行备份。
然而,上述备份方案在控制端或者数据服务器出现故障后,无法继续当前备份周期的备份任务,需要等到下个备份周期来临再执行数据备份,存在当前备份周期的数据丢失风险。
发明内容
本申请实施例提供一种任务处理方法、设备、***以及存储介质,旨在提供一种可以在数据服务器执行数据备份任务出现故障后,其他服务器可以继续执行该数据备份任务,可以保证当前备份周期的数据备份的有效性。
第一方面,本申请一实施例提供一种任务处理方法,方法应用于当前服务器,方法包括:
获取其他服务器在执行数据备份任务时的运行状态其中,所述当前服务器和其他服务器均为从数据服务器;
若运行状态为故障状态,根据数据备份任务的任务标识生成授权请求;
向中央服务器发送授权请求,以使中央服务器在确定与数据备份任务关联的授权标识指示的状态为解锁状态时生成确认授权信息;
若接收到中央服务器发送的确认授权信息,则执行数据备份任务。
可选地,方法还包括:
若确定心跳计时器的状态为到期状态则生成心跳数据;
向中央服务器发送心跳数据,以使中央服务器根据心跳数据更新当前服务器的运行状态。
可选地,获取其他服务器在执行数据备份任务时的运行状态,具体包括:
向中央服务器发送监控请求;其中,监控请求包括在执行数据备份任务的其他服务器的节点标识;
接收中央服务器返回的节点标识对应的其他服务器的运行状态。
在上述实施例中,各个从数据服务器向中央服务器发送心跳数据,以使中央服务器可以更新数据服务器的运行状态,并由从数据服务器实时监控从数据服务器在执行数据备选任务时的运行状态,在运行状态为故障状态时及时竞争处理该数据备份任务,无需等到下个备份周期再进行备份,可以保证当前备份周期内数据备份的有效性。
可选地,在向中央服务器发送授权请求之后,方法还包括:
接收中央服务器发送的与数据备份任务关联的授权标识;
若确定授权标识指示的状态为解锁状态,则根据当前服务器的节点标识和锁定时长生成锁定请求;
向中央服务器发送锁定请求,以使中央服务器将与数据备份任务关联的授权标识指示的状态切换至锁定状态。
在上述实施例中,在当前服务器竞争到处理数据备份任务的权限时,使授权标识切换至锁定状态,以使其他从数据服务器无法继续竞争处理该数据备份任务。
可选地,在若接收到中央服务器发送的确认授权信息则执行数据备份任务之后,方法还包括:
向中央服务器发送用于表示完成数据备份任务的完成指示信息。
可选地,方法还包括:
向中央服务器发送任务查询请求,以使中央服务器确定数据备份任务对应的触发标识;
接收中央服务器返回数据备份任务对应的触发标识;
在确定触发标识的状态为触发状态时向中央服务器发送授权请求。
在上述实施例中,监控数据备份任务的触发标识,在确定该触发标识为触发状态时竞争处理该数据备份任务。
第二方面,本申请提供一种任务处理方法,方法应用于中央服务器,方法包括:
接收当前服务器发送的授权请求,其中,授权请求是其他服务器在执行数据备份任务时的运行状态为故障状态时所生成的,授权请求包括数据备份任务的任务标识;
根据任务标识确定与数据备份任务关联的授权标识;
若授权标识指示的状态为解锁状态时生成确认授权信息;
向当前服务器发送授权信息,以使当前服务器执行数据备份任务。
可选地,方法还包括:
接收当前服务器发送的心跳数据,其中,心跳数据是在心跳计时器到期时生成的;
将发送心跳数据的当前服务器的运行状态设置为正常状态。
可选地,方法还包括:
若未收到当前服务器发送的心跳数据,则将未发送心跳数据的当前服务器的运行状态设置为故障状态。
可选地,方法还包括:
接收当前服务器发送的监控请求,其中,监控请求包括在执行数据备份任务的其他服务器的节点标识;
根据节点标识获得其他服务器在执行数据备份任务的运行状态;
向当前服务器发送其他服务器在执行数据备份任务的运行状态。
可选地,接收当前服务器发送的锁定请求,其中,锁定请求包括当前服务器的节点标识和锁定时长;
将与数据备份任务关联的授权标识指示的状态切换至锁定状态;
根据锁定时长生成设置指令和启动指令,其中,设置指令用于设定状态计时器的计时时长为锁定时长,启动指令用于启动状态计时器。
可选地,在向当前服务器发送授权信息之后,方法还包括:
接收用于表示完成数据备份任务的完成指示信息;
根据完成指示信息将数据备份任务的执行状态切换至已完成状态。
可选地,的方法还包括:
接收管理服务器发送的触发指令,其中,触发指令是管理任务器在确定任务计时器的状态为到期状态,且数据备份任务的执行状态为未执行状态时生成的;
根据触发指令将数据备份任务对应的触发标识的状态切换至触发状态。
在上述实施例中,管理服务器监控任务计时器的计时状态,在确定任务计时器到期且该数据备选任务的执行状态为未执行状态时生成触发指令,以切换数据备份任务对应的触发标识的状态,进而可以触发当前服务器的竞争处理数据备份任务。
可选地,方法还包括:
接收当前服务器发送的任务查询请求;
向当前服务器发送数据备份任务对应的触发标识的状态,以使当前服务器在确定触发标识的状态指示触发状态时生成授权请求。
第三方面,本申请提供一种数据服务器,包括:存储器,处理器;
存储器;用于存储处理器可执行指令的存储器;
其中,处理器被配置为实现第一方面及可选方案所涉及的任务处理方法。
第四方面,本申请提供一种中央服务器,包括:存储器,处理器;
存储器;用于存储处理器可执行指令的存储器;
其中,处理器被配置为实现第一方面及可选方案所涉及的任务处理方法。
第五方面,本申请提供一种任务处理***,包括第三方面所涉及的的数据服务器、第四方面所涉及的中央服务器以及管理服务器。
第六方面,本申请提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现第一方面及可选方案所涉及或者第二方面及可选方案所涉及的任务处理方法。
第七方面,本申请提供一种计算机程序产品,包括指令,指令被处理器执行时实现第一方面及可选方案所涉及或者第二方面及可选方案所涉及的任务处理方法。
本申请实施例提供一种任务处理方法、设备、***以及存储介质,当前服务器监控其他服务器在执行数据备选任务时的运行状态,在确定该运行状态为故障状态时生成授权请求,以向中央服务器竞争处理数据备选任务,在中央服务器确定与该数据备份任务关联的授权标识指示解锁状态时,授权当前服务器执行数据备选任务,无需等到下个备份周期再进行备份,可以保证当前备份周期内数据备份的有效性。另外,数据服务器向中央服务器周期性发送心跳数据,以使中央服务器更新各个从数据服务器的运行状态,当中央服务器接收不到心跳数据时,将对应从数据服务器的运行状态切换至故障状态,进而可以出发其他从数据服务器竞争未成功执行的数据备选任务。此外,仅由从数据服务器执行数据备份任务,可以减少主数据服务器的数据处理量,保证主数据服务器提供数据服务的性能。
附图说明
图1为本申请一实施例提供的任务处理***的结构示意图
图2为本申请一实施例提供的任务处理方法的流程示意图;
图3为本申请另一实施例提供的任务处理方法的流程示意图;
图4为本申请另一实施例提供的任务处理方法的流程示意图;
图5为本申请另一实施例提供的任务处理方法的流程示意图;
图6为本申请另一实施例提供的任务处理装置的结构示意图;
图7为本申请另一实施例提供的任务处理装置的结构示意图;
图8为本申请另一实施例提供的服务器的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请中的附图,对本申请中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请提供一种任务处理方法、设备、***以及存储介质,旨在提供一种数据服务器在执行数据备份任务出现故障时,其他数据服务器可以及时竞争该数据备份任务,以保证本次备份周期的数据备份有效性。本申请的发明构思是:数据服务器实时监控其他服务器在执行数据备份任务时的运行状态,若该运行状态为故障状态,则及时竞争执行该数据备份任务,以保证本次备份周期的数据备份有效性。另外,数据服务器向中央服务器周期性发送心跳数据,以使中央服务器可以获取各个数据服务器的运行状态,数据服务器可以通过中央服务器监控其他数据服务器的运行状态,进而在其他服务器在执行数据备份任务时出现故障后可以及时竞争该数据备份任务。
如图1所示,本申请一实施例提供的任务处理***包括多个数据服务器101、中央服务器102以及管理服务器103。其中,每个数据服务器101与中央服务器102之间通信连接,管理服务器103也与中央服务器102之间通信连接。
多个数据服务器101之间构成数据服务器集群,可选择数据服务器集群中任意一个数据服务器作为主数据服务器,其他数据服务器为从数据服务器。主数据服务器和从数据服务器上存储数据相同,该数据服务器集群用于提供数据存储、查询等服务。
通过在每个数据服务器上部署客户端的服务守护进程,从数据服务器101监听其他从数据服务器101的运行状态,当其中一个从数据服务器确定其他从数据服务器在执行数据库备份任务时出现故障,则向中央服务器竞争处理该数据库备份任务。在中央服务器向该从数据服务器发送确认授权信息,以使该从数据服务器继续处理该数据库备份任务。
管理服务器103用于轮询各个数据库备份任务的任务计时器,若任务计时器到期,继续判断该数据库备份任务的执行状态,若执行状态指示未完成,则向中央服务器发送该数据库备份任务的任务信息,以使中央服务器可以新建该数据库备份任务的触发标识,并该触发标识的状态设置至触发状态。从数据服务器101监控触发标识的状态,确定触发标识指示触发状态时,执行该数据备份任务。此处还需要说明的是,为了提高管理服务器的性能,为管理服务器配置管理数据服务器,用于存储管理服务器在提供服务过程中的元数据,例如:数据备份任务的任务信息、各个管理账户的账户信息等。
此处需要说明的是,除了数据服务器采用服务器集群方式,中央服务器和管理服务器也可以采用服务器集群,以提高中央服务器和管理服务器提供服务的可靠性。
在每个数据服务器上部署客户端的服务守护进程时,可以基于物理机部署的数据库服务,也就是在每个数据服务器分别部署客户端的服务守护进程。还可以基于容器编排引擎部署客户端的服务守护进程,例如:kubernetes,可以如下两种方式部署客户端的服务守护进程。第一种是和数据库实例在同一个容器中部署客户端的服务守护进程。第二种是以边车模式(sidecar)部署,和数据库实例做容器级别的隔离,在sidecar容器中部署客户端的服务守护进程。
如图2所示,本申请另一实施例提供的任务处理方法应用于上述任务处理***,为了清楚描述,将多个作为从数据服务器分别标记为当前服务器和其他服务器,该方法包括如下步骤:
S201、当前服务器获取其他服务器在执行数据备份任务的运行状态。
其中,数据备份任务是指将从数据服务器中数据进行备份,其他服务器运行状态分为故障状态和运行状态。
S202、当前服务器确定运行状态为故障状态,根据数据备份任务的任务标识生成授权请求。
其中,若确定其他数据器在执行数据备份任务时出现故障,则当前服务器竞争处理该数据备份任务。获取正在执行的数据备份任务的任务标识,并对该数据备份任务的任务标识进行编码、打包等处理生成授权请求,以向中央服务器请求处理该数据备份任务。
S203、当前服务器向中央服务器发送授权请求。
S204、中央服务器确定与数据备份任务关联的授权标识。
其中,中央服务器解析授权请求,获得当前服务器所竞争的数据备份任务的任务标识,并根据数据备份任务的任务标识确定与数据备份任务关联的授权标识。
S205、中央服务器确定与数据备份任务关联的授权标识指示的状态为解锁状态时生成确认授权信息。
其中,识别与该数据备份任务关联的授权标识所指示的状态,若授权标识指示解锁状态时生成确认授权信息。若授权标识指示锁定状态时返回授权失败的提示信息。
S206、中央服务器向当前服务器发送确认授权信息。
S207、当前服务器执行数据备份任务。
其中,当前服务器在接收到确认授权信息后,解析该授权信息以获得数据备份任务的任务信息,根据数据备份任务的任务信息进行数据备份。
在本申请实施例提供的任务处理方法中,当前服务器监控其他服务器在执行数据备份任务时的运行状态,在确定当前服务器出现故障时,及时向中央服务器竞争执行该数据备份任务,相较于现有技术,在执行数据备份任务过程中当前服务器出现故障时无需等到下个备份周期再进行备份,可以保证当前备份周期内数据备份的有效性。
如图3所示,本申请另一实施例提供一种任务处理方法,该任务处理方法应用于上述任务处理***,该任务处理方法包括如下步骤:
S301、当前服务器在心跳计时器到期时生成心跳数据。
其中,在当前服务器中新建心跳计时器,该心跳计时器用于触发生成心跳数据。也就是若确定心跳计时器到期则生成心跳数据,并再次启动心跳服务器,以使当前服务器可以周期性生成心跳数据。
其他服务器内也设置有心跳计时器,并由心跳计时器周期性触发其他服务器生成心跳数据,并向中央服务器发送心跳数据。
S302、当前服务器向中央服务器发送心跳数据。
S303、中央服务器将发送心跳数据的当前服务器的运行状态设置为正常状态。
其中,心跳数据包括当前服务器的节点标识,中央服务器在接收到心跳数据时,可以根据从心跳数据中解析出的节点标识更新本地存储的当前服务器的运行状态列表,以使心跳数据对应的当前服务器的运行状态为正常状态。
中央服务器在接收到其他服务器的心跳数据后,也将其他服务器的运行状态保持在正常状态。
S304、中央服务器未接收到心跳数据时将发送心跳数据的当前服务器的运行状态设置为故障状态。
若中央服务器未收到对应当前服务器发送的心跳数据,更新本地存储的当前服务器的运行状态列表,以使心跳数据对应的当前服务器的运行状态为故障状态。
中央服务器未收到其他服务器的心跳数据后,也会将其他服务器的运行状态切换至故障状态。
此处需要说明的是,S301至S304可以在S305至S311任意步骤之间,此处不做限制。
S305、当前服务器向中央服务器发送监控请求。
其中,监控请求包括正在执行数据备份任务的其他服务器的节点标识。监控请求用于查询正在执行数据备份任务的其他服务器的运行状态。
S306、中央服务器根据其他服务器的节点标识获得其他服务器的运行状态。
其中,中央服务器根据其他服务器的节点标识查找本地存储的当前服务器的运行状态列表,确定正在执行数据备份任务的其他服务器的运行状态。
S307、向当前服务器发送其他服务器的运行状态。
S308、当前服务器确定运行状态为故障状态,根据数据备份任务的任务标识生成授权请求。
其中,当前服务器确定正在执行数据备份任务的其他服务器出现故障时,向中央服务器竞争执行该数据备份任务。也就是根据该数据备份任务的任务标识生成授权请求,以向中央服务器请求处理该数据备份任务。
S309、当前服务器向中央服务器发送授权请求。
S310、中央服务器在确定与数据备份任务关联的授权标识。
其中,中央服务器在接收到授权请求时,查询与该数据备份任务关联的授权标识,确定该数据备份任务是否被正在被其他服务器处理。
S311、中央服务器确定与数据备份任务关联的授权标识指示的状态为解锁状态时生成确认授权信息。
其中,若与该数据备份任务关联的授权标识为解锁状态时,则表示没有从数据服务器处理该数据备份任务,则生成确认授权信息,以使该当前服务器可以执行该数据备份任务。若确定与该数据备份任务关联的授权标识为锁定状态,则表示该数据备份任务被其他服务器处理,则返回请求失败的提示信息。
S312、中央服务器向当前服务器发送确认授权信息。
S313、当前服务器对数据备份任务进行处理。
其中,当前服务器在接收到确认授权信息后,解析该授权信息获得数据备份任务的任务信息,根据数据备份任务的任务信息进行数据备份。
在本申请实施例提供的任务处理方法中,当前服务器定期向中央服务器发送心跳数据,若中央服务器未收到心跳数据,中央服务器可以确定当前服务器的处于故障状态,在其他服务器监控当前服务器的运行状态时,可以及时返回至其他服务器,以使其他服务器在确定该服务器在执行数据备份时出现故障,可以及时竞争处理该数据备份任务,可以保证本次备份周期的数据备份有效性。
如图4所示,本申请另一实施例提供一种任务处理方法,该任务处理方法应用于上述任务处理***,该任务处理方法包括如下步骤:
S401、当前服务器获取其他服务器在执行数据备份任务时的运行状态。
S402、当前服务器确定运行状态为故障状态,根据数据备份任务的任务标识生成授权请求。
S403、当前服务器向中央服务器发送授权请求。
S404、中央服务器确定与数据备份任务关联的授权标识。
S405、中央服务器授权标识指示的状态为解锁状态时生成确认授权信息。
S406、中央服务器向当前服务器发送确认授权信息。
S407、当前服务器执行数据备份任务。
其中,S402至S407已经在上述实施例中详细说明。
S408、当前服务器向中央服务器发送完成指示信息。
其中,当前服务器完成该数据备份任务后,可以生成完成指示信息,该完成指示信息用于表示已完成数据备份任务。
S409、根据完成指示信息将数据备份任务的执行状态切换至已完成状态。
其中,中央服务器在接收到完成指示信息后,也就是数据备份任务已经完成,则将该数据备份任务的执行状态切换至已完成状态。
S410、中央服务器发送与数据备份任务关联的授权标识。
S411、当前服务器确定授权标识指示的状态为解锁状态时根据当前服务器的节点标识和锁定时长生成锁定请求。
其中,若授权标识指示的状态为解锁状态时,也就是没有其他服务器处理该数据备份任务,当前服务器竞争该数据备份任务。
在锁定时长的阈值范围内随机生成锁定时长,并根据当前服务器的节点标识和锁定时长生成锁定请求,以请求将与数据备份任务关联的授权标识的状态切换至锁定状态。
S412、当前服务器向中央服务器发送锁定请求。
S413、中央服务器将授权标识指示的状态切换至锁定状态。
其中,中央服务器在收到当前服务器发送的锁定请求后,与数据备份任务关联的授权标识指示的状态切换至锁定状态,以使其他服务器无法再竞争处理该数据备份任务。
S414、中央服务器生成设置指令和启动指令。
其中,中央服务器新建状态计时器,该状态计时器用于切换授权标识的指示状态。设置指令用于设定状态计时器的计时时长为锁定时长,启动指令用于启动状态计时器。
S415、中央服务器在确定状态计时器到期时将授权标识指示的状态切换至解锁状态。
其中,若状态计时器到期时,确定与数据备份任务关联的授权标识指示锁定状态已经持续锁定时长,则需要将该授权标识的指示状态切换至解锁状态。若正在处理数据备份任务的其他服务器出现故障,无法继续处理该数据备份任务,则可以通过该机制使其他服务器可以继续竞争该数据备份任务。
在本申请实施例提供的任务处理方法中,当前服务器在确定与该数据备份任务关联的授权标识为解锁状态时,生成锁定请求,以使其他服务器无法继续竞争该数据备份任务,另外,在锁定请求中设置锁定时间,并设置状态计时器的计时时间为锁定时长,在状态计时器到期时可以将该数据备份任务关联的授权标识指示状态切换至解锁状态,若正在处理数据备份任务的其他服务器出现故障,则可以通过该机制使其他服务器可以继续竞争该数据备份任务。
下面结合中央服务器集群基于ETCD向数据服务器集群提供服务为例说明。
ETCD是CoreOS团队于2013年6月发起的开源项目,它的目标是构建一个高可用的分布式键值对(key-value)数据库。ETCD内部采用raft协议作为一致性算法,ETCD基于Go语言实现。
数据服务器集群包括3个数据服务器,1个主数据服务器和2个从数据服务器,3个数据服务器在中央服务器集群中注册相关信息。管理服务器也向中央服务器中注册相关信息。
ETCD中的目录结构如下所示:
目录/clusters表示clusters根目录;
目录/clusters/cluster_test表示集群名称为cluster_test;
目录/clusters/cluster_test/cron表示触发标识所存储位置;
目录/clusters/cluster_test/lock表示授权标识的存储地址;
目录/clusters/cluster_test/status表示数据备份任务的执行状态的存储地址;
目录/clusters/cluster_test/workers表示数据服务器的IP列表的存储地址;
目录clusters/cluster_test/workers/192.168.0.1表示主数据服务器;
目录/clusters/cluster_test/workers/192.168.0.2表示从数据服务器;
目录/clusters/cluster_test/workers/192.168.0.3表示从数据服务器。
此处还需要说明的是,管理服务器也会在中央服务器集群中注册各个数据备份任务的任务信息,并注册各个数据备份任务的触发标识的初始状态为等待状态。
如图5所示,本申请另一实施例提供一种任务处理方法,该方法包括如下步骤:
S501、管理服务器轮询各个数据备份任务的任务计时器。
其中,在管理服务器中为各个数据备份任务构建任务计时器,并根据各个数据备份任务的备份需求设置各个任务计时器的计时时长。管理服务器监控各个任务计时器的计时状态,在确定任务计时器到期后生成执行状态查询请求。
S502、管理服务器确定任务计时器到期时生成执行状态查询请求。
其中,在确定某个数据备份任务的任务计时器到期时,根据该数据备份任务的任务标识生成执行状态查询请求。
S503、管理服务器向中央服务器发送执行状态查询请求。
S504、中央服务器获取该数据备份任务的执行状态。
其中,中央服务器在解析执行状态查询请求,获得要查询的数据备份任务的任务标识,并根据该任务标识在数据备份任务的执行状态表中查询该数据备份任务的执行状态。也就是在目录/clusters/cluster_test/status中查询。
S505、中央服务器向管理服务器发送数据备份任务的执行状态。
S506、管理服务器在确定数据备份任务的执行状态为未执行状态时,生成触发指令。
其中,管理服务器在确定该数据备份任务的执行状态为未执行状态时,生成用于触发执行该数据备份任务的触发指令。
S507、管理服务器向中央服务器发送触发指令。
S508、中央服务器将数据备份任务对应的触发标识的状态切换至触发状态。
其中,中央服务器在接收到触发指令时,从触发指令中解析出数据备份任务的任务标识,并将该数据备份任务的任务标识对应的触发标识所指示状态切换至触发状态。也就是在目录/clusters/cluster_test/cron中修改数据备份任务对应的cron的数值。
S509、当前服务器向中央服务器发送任务查询请求。
其中,任务查询请求用于监控各个数据备份任务的触发标识,在确定触发标识为触发状态时当前服务器竞争该数据备份任务。
S510、中央服务器根据任务查询请求获取确定触发标识的状态。
其中,从任务查询请求中解析出任务标识,根据任务标识从触发标识列表中读取该任务标识对应的触发标识,也就是在目录/clusters/cluster_test/cron中读取任务标识对应的cron的数值。
S511、中央服务器向当前服务器发送触发标识的状态。
S512、当前服务器在确定触发标识所指示状态为触发状态时向中央服务器发送授权请求。
其中,中央服务器确定触发标识所指示状态切换至触发状态时,生成授权请求,以竞争该数据备份任务。
S513、中央服务器确定与数据备份任务关联的授权标识。
S514、中央服务器确定与数据备份任务关联的授权标识指示的状态为解锁状态。
S515、中央服务器生成确认授权信息。
S516、中央服务器向当前服务器发送确认授权信息。
S517、当前服务器对数据备份任务进行处理。
其中,S513至S517已经在上述实施例中详细说明,此处不再说明。
在从数据服务器执行数据备份任务时其他从数据服务器可以监控该数据服务器的运行状态,并在该从数据服务器出现故障时竞争该数据备份任务。该过程已经在上述实施例中详细说明,此处不再赘述。
在本申请实施例提供的数据处理方法中,管理服务器监控各个任务计时器的计时状态,在计时器到期时请求中央服务器修改触发标识,以使从数据服务器可以监控到数据备份任务被触发,进而竞争处理该数据备份任务,以使其他从数据服务器可以继续监控从数据服务器的运行状态,在出现故障时及时竞争该数据备份任务。
如图6所示,本申请另一实施例提供一种任务处理装置600,该装置600包括:
获取模块601,用于获取其他服务器在执行数据备份任务时的运行状态;
第一处理模块602,用于若运行状态为故障状态,根据数据备份任务的任务标识生成授权请求;
第一发送模块603,用于向中央服务器发送授权请求,以使中央服务器在确定与数据备份任务关联的授权标识指示的状态为解锁状态时生成确认授权信息;
第一处理模块602还用于若接收到中央服务器发送的确认授权信息,则执行数据备份任务。
可选地,第一处理模块602还用于若确定心跳计时器的状态为到期状态则生成心跳数据;
第一发送模块603还用于向中央服务器发送心跳数据,以使中央服务器根据心跳数据更新当前服务器的运行状态。
可选地,装置包括第一接收模块604;
第一发送模块603还用于向中央服务器发送监控请求;其中,监控请求包括在执行数据备份任务的其他服务器的节点标识;
第一接收模块604用于接收中央服务器返回的节点标识对应的其他服务器的运行状态。
可选地,第一接收模块604用于接收中央服务器发送的与数据备份任务关联的授权标识;
第一处理模块602还用于若确定授权标识指示的状态为解锁状态,则根据当前服务器的节点标识和锁定时长生成锁定请求;
第一发送模块603还用于向中央服务器发送锁定请求,以使中央服务器将与数据备份任务关联的授权标识指示的状态切换至锁定状态。
可选地,第一发送模块603还用于向中央服务器发送用于表示完成数据备份任务的完成指示信息。
可选地,第一发送模块603还用于向中央服务器发送任务查询请求,以使中央服务器确定数据备份任务对应的触发标识;
第一接收模块604用于接收中央服务器返回数据备份任务对应的触发标识;
第一发送模块603还用于在确定触发标识的状态为触发状态时向中央服务器发送授权请求。
如图7所示,本申请另一实施例提供一种任务处理装置700,该装置700包括:
第二接收模块701,用于接收当前服务器发送的授权请求,其中,授权请求是其他服务器在执行数据备份任务时的运行状态为故障状态时所生成的,授权请求包括数据备份任务的任务标识;
第二处理模块702,用于根据任务标识确定与数据备份任务关联的授权标识;
第二处理模块702还用于若授权标识指示的状态为解锁状态时生成确认授权信息;
第二发送模块703,用于向当前服务器发送授权信息,以使当前服务器执行数据备份任务。
可选地,第二接收模块701还用于接收当前服务器发送的心跳数据,其中,心跳数据是在心跳计时器到期时生成的;
第二处理模块702还用于将发送心跳数据的当前服务器的运行状态设置为正常状态。
可选地,第二处理模块702还用于若未收到当前服务器发送的心跳数据,则将未发送心跳数据的当前服务器的运行状态设置为故障状态。
可选地,第二接收模块701还用于接收当前服务器发送的监控请求,其中,监控请求包括在执行数据备份任务的其他服务器的节点标识;
第二处理模块702还用于根据节点标识获得其他服务器在执行数据备份任务的运行状态;
第二发送模块703还用于向当前服务器发送其他服务器在执行数据备份任务的运行状态。
可选地,第二接收模块701还用于接收当前服务器发送的锁定请求,其中,锁定请求包括当前服务器的节点标识和锁定时长;
第二处理模块702还用于将与数据备份任务关联的授权标识指示的状态切换至锁定状态;
第二处理模块702还用于根据锁定时长生成设置指令和启动指令,其中,设置指令用于设定状态计时器的计时时长为锁定时长,启动指令用于启动状态计时器。
可选地,第二接收模块701还用于接收用于表示完成数据备份任务的完成指示信息;
第二处理模块702还用于根据完成指示信息将数据备份任务的执行状态切换至已完成状态。
可选地,第二接收模块701还用于接收管理服务器发送的触发指令,其中,触发指令是管理任务器在确定任务计时器的状态为到期状态,且数据备份任务的执行状态为未执行状态时生成的;
第二处理模块702还用于根据触发指令将数据备份任务对应的触发标识的状态切换至触发状态。
可选地,第二接收模块701还用于接收当前服务器发送的任务查询请求;
第二发送模块703还用于向当前服务器发送数据备份任务对应的触发标识的状态,以使当前服务器在确定触发标识的状态指示触发状态时生成授权请求。
如图8所示,本申请另一实施例提供的服务器800包括:发送器801、接收器802、存储器803、及处理器804。该服务器可以是从数据服务器、管理服务器以及中央服务器中任意一个。
其中,发送器801用于发送指令和数据,接收器802用于接收指令和数据,存储器803用于存储计算机执行指令,处理器804,用于执行存储器存储的计算机执行指令,以实现上述实施例中任务处理方法所执行的各个步骤。具体可以参见前述任务处理方法实施例中的相关描述。
可选地,上述存储器803既可以是独立的,也可以跟处理器804集成在一起。当存储器803独立设置时,该处理设备还包括总线,用于连接存储器803和处理器804。
本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,当处理器执行计算机执行指令时,实现如上处理设备所执行的任务处理方法。
本申请实施例还提供一种计算机程序产品,包括指令,指令被处理器执行时实现如上处理设备所执行的任务处理方法。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (17)
1.一种任务处理方法,其特征在于,所述方法应用于当前服务器,所述方法包括:
获取其他服务器在执行数据备份任务时的运行状态,其中,所述当前服务器和其他服务器均为从数据服务器;
若所述运行状态为故障状态,根据所述数据备份任务的任务标识生成授权请求;
向中央服务器发送所述授权请求,以使所述中央服务器在确定与所述数据备份任务关联的授权标识指示的状态为解锁状态时生成确认授权信息;
若接收到所述中央服务器发送的确认授权信息,则执行所述数据备份任务;
其中,获取其他服务器在执行数据备份任务时的运行状态,具体包括:
向所述中央服务器发送监控请求;其中,监控请求包括在执行所述数据备份任务的其他服务器的节点标识;
接收所述中央服务器返回的所述节点标识对应的其他服务器的运行状态。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若确定心跳计时器的状态为到期状态则生成心跳数据;
向所述中央服务器发送所述心跳数据,以使所述中央服务器根据所述心跳数据更新所述当前服务器的运行状态。
3.根据权利要求1或2所述的方法,其特征在于,在向中央服务器发送所述授权请求之后,所述方法还包括:
接收所述中央服务器发送的与所述数据备份任务关联的授权标识;
若确定所述授权标识指示的状态为解锁状态,则根据所述当前服务器的节点标识和锁定时长生成锁定请求;
向所述中央服务器发送所述锁定请求,以使所述中央服务器将与所述数据备份任务关联的授权标识指示的状态切换至锁定状态。
4.根据权利要求1或2所述的方法,其特征在于,在所述若接收到所述中央服务器发送的确认授权信息则执行所述数据备份任务之后,所述方法还包括:
向所述中央服务器发送用于表示完成所述数据备份任务的完成指示信息。
5.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
向所述中央服务器发送任务查询请求,以使所述中央服务器确定所述数据备份任务对应的触发标识;
接收所述中央服务器发送的所述数据备份任务对应的触发标识;
在确定所述触发标识的状态为触发状态时向所述中央服务器发送授权请求。
6.一种任务处理方法,其特征在于,所述方法应用于中央服务器,所述方法包括:
接收当前服务器发送的授权请求,其中,所述授权请求是当其他服务器在执行数据备份任务时的运行状态为故障状态时所生成的,所述授权请求包括所述数据备份任务的任务标识;
根据所述任务标识确定与所述数据备份任务关联的授权标识;
若所述授权标识指示的状态为解锁状态时生成确认授权信息;
向所述当前服务器发送所述确认授权信息,以使所述当前服务器执行所述数据备份任务;
其中,所述方法还包括:
接收所述当前服务器发送的监控请求,其中,所述监控请求包括在执行所述数据备份任务的其他服务器的节点标识;
根据所述节点标识获得所述其他服务器在执行所述数据备份任务时的运行状态;
向所述当前服务器发送所述其他服务器在执行所述数据备份任务时的运行状态。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
接收所述当前服务器发送的心跳数据,其中,所述心跳数据是在心跳计时器到期时生成的;
将发送所述心跳数据的当前服务器的运行状态设置为正常状态。
8.根据权利要求6所述的方法,其特征在于,所述方法还包括:
若未收到所述当前服务器发送的心跳数据,则将未发送所述心跳数据的当前服务器的运行状态设置为故障状态。
9.根据权利要求6至8中任意一项所述的方法,其特征在于,所述方法还包括:
接收所述当前服务器发送的锁定请求,其中,所述锁定请求包括所述当前服务器的节点标识和锁定时长;
将与所述数据备份任务关联的授权标识指示的状态切换至锁定状态;
根据所述锁定时长生成设置指令和启动指令,其中,所述设置指令用于设定状态计时器的计时时长为所述锁定时长,所述启动指令用于启动所述状态计时器。
10.根据权利要求6至8中任意一项所述的方法,其特征在于,在所述向所述当前服务器发送所述授权信息之后,所述方法还包括:
接收用于表示完成所述数据备份任务的完成指示信息;
根据所述完成指示信息将所述数据备份任务的执行状态切换至已完成状态。
11.根据权利要求6至8中任意一项所述的方法,其特征在于,所述的方法还包括:
接收管理服务器发送的触发指令,其中,所述触发指令是管理任务器在确定任务计时器的状态为到期状态,且所述数据备份任务的执行状态为未执行状态时生成的;
根据触发指令将所述数据备份任务对应的触发标识的状态切换至触发状态。
12.根据权利要求6至8中任意一项所述的方法,其特征在于,所述方法还包括:
接收所述当前服务器发送的任务查询请求;
向所述当前服务器发送所述数据备份任务对应的触发标识的状态,以使所述当前服务器在确定所述触发标识的状态指示触发状态时生成授权请求。
13.一种数据服务器,其特征在于,包括:存储器,处理器;
存储器;用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为实现如权利要求1至5中任一项所述的任务处理方法。
14.一种中央服务器,其特征在于,包括:存储器,处理器;
存储器;用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为实现如权利要求6至12中任意一项所述的任务处理方法。
15.一种任务处理***,其特征在于,包括多个权利要求13所述的数据服务器、权利要求14所述的中央服务器以及管理服务器。
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1至5任一项或者6至12中任意一项所述的任务处理方法。
17.一种计算机程序产品,包括指令,其特征在于,所述指令被处理器执行时实现权利要求1至5任一项或者6至12中任意一项所述的任务处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110008134.8A CN113778744B (zh) | 2021-01-05 | 2021-01-05 | 任务处理方法、设备、***以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110008134.8A CN113778744B (zh) | 2021-01-05 | 2021-01-05 | 任务处理方法、设备、***以及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113778744A CN113778744A (zh) | 2021-12-10 |
CN113778744B true CN113778744B (zh) | 2024-06-18 |
Family
ID=78835394
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110008134.8A Active CN113778744B (zh) | 2021-01-05 | 2021-01-05 | 任务处理方法、设备、***以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113778744B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114666389B (zh) * | 2022-03-14 | 2024-05-17 | 京东科技信息技术有限公司 | 分布式***中节点状态的检测方法、装置及计算机设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102467508A (zh) * | 2010-11-04 | 2012-05-23 | 中兴通讯股份有限公司 | 提供数据库服务的方法及数据库*** |
CN103019889A (zh) * | 2012-12-21 | 2013-04-03 | 曙光信息产业(北京)有限公司 | 分布式文件***及其故障处理方法 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103813369A (zh) * | 2012-11-13 | 2014-05-21 | 北京信威通信技术股份有限公司 | 一种分布式的电信交换设备备份方法 |
JP2014229088A (ja) * | 2013-05-23 | 2014-12-08 | ソニー株式会社 | データ処理システム、データ処理装置および記憶媒体 |
CN103823727B (zh) * | 2014-02-13 | 2016-04-13 | 深圳市同洲电子股份有限公司 | 一种直播录制的备份方法和装置 |
CN105447029B (zh) * | 2014-08-27 | 2019-06-21 | 阿里巴巴集团控股有限公司 | 一种数据库故障时的业务处理方法和设备 |
CN106528327B (zh) * | 2016-09-30 | 2019-06-21 | 华为技术有限公司 | 一种数据处理方法以及备份服务器 |
CN108628717A (zh) * | 2018-03-02 | 2018-10-09 | 北京辰森世纪科技股份有限公司 | 一种数据库***及监控方法 |
CN109508261B (zh) * | 2018-08-31 | 2019-12-13 | 云南电网有限责任公司信息中心 | 一种基于大数据的电网数据节点备份方法及备份*** |
CN109936481B (zh) * | 2019-03-22 | 2021-06-18 | 北京达佳互联信息技术有限公司 | 主从服务器切换方法、装置、电子设备及存储介质 |
CN110737545B (zh) * | 2019-09-24 | 2021-12-17 | 华青融天(北京)软件股份有限公司 | 一种数据处理方法、装置、电子设备及存储介质 |
-
2021
- 2021-01-05 CN CN202110008134.8A patent/CN113778744B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102467508A (zh) * | 2010-11-04 | 2012-05-23 | 中兴通讯股份有限公司 | 提供数据库服务的方法及数据库*** |
CN103019889A (zh) * | 2012-12-21 | 2013-04-03 | 曙光信息产业(北京)有限公司 | 分布式文件***及其故障处理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113778744A (zh) | 2021-12-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI753880B (zh) | 基於分布式系統的任務處理方法、裝置和系統 | |
CN105354108B (zh) | 一种数据备份方法及节点 | |
CN107153660B (zh) | 分布式数据库***的故障检测处理方法及其*** | |
CN103530200A (zh) | 一种服务器热备份***和方法 | |
CN110716793B (zh) | 一种分布式事务的执行方法、装置、设备及存储介质 | |
CN111400104B (zh) | 数据同步方法及装置、电子设备、存储介质 | |
CN109144748B (zh) | 一种服务器、分布式服务器集群及其状态驱动方法 | |
CN107153595B (zh) | 分布式数据库***的故障检测方法及其*** | |
CN112506702A (zh) | 数据中心容灾方法、装置、设备及存储介质 | |
CN113505012B (zh) | 一种消息队列的处理方法、介质、设备和*** | |
CN113778744B (zh) | 任务处理方法、设备、***以及存储介质 | |
CN110109772B (zh) | 一种cpu的重启方法、通信设备及可读存储介质 | |
CN109257396B (zh) | 一种分布式锁调度方法及装置 | |
CN110704172B (zh) | 集群***定时任务调度方法及集群*** | |
CN106557522B (zh) | 一种用于提供定时功能的方法与设备 | |
JP2010244463A (ja) | イベント検出制御方法及びシステム | |
JP2012059193A (ja) | 監視制御システム、およびこれに利用する監視制御装置、監視制御方法 | |
CN109450757B (zh) | 一种CANopen主站的启动方法及其统筹管理器 | |
CN112954008B (zh) | 一种分布式任务处理方法、装置、电子设备及存储介质 | |
CN114253690A (zh) | 任务调度方法、装置、电子设备及计算机可读存储介质 | |
CN110113395B (zh) | 共享文件***维护方法及装置 | |
JP5503512B2 (ja) | 計算機システムおよびその障害発生時制御方法 | |
CN112367386A (zh) | 基于Ignite的自动化运维方法、装置及计算机设备 | |
CN112787868A (zh) | 一种信息同步的方法和装置 | |
CN112256484A (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 |