CN113391814A - 任务处理方法、装置、系统及存储介质 - Google Patents
任务处理方法、装置、系统及存储介质 Download PDFInfo
- Publication number
- CN113391814A CN113391814A CN202110615828.8A CN202110615828A CN113391814A CN 113391814 A CN113391814 A CN 113391814A CN 202110615828 A CN202110615828 A CN 202110615828A CN 113391814 A CN113391814 A CN 113391814A
- Authority
- CN
- China
- Prior art keywords
- task
- target
- tasks
- child nodes
- nodes
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/45—Exploiting coarse grain parallelism in compilation, i.e. parallelism between groups of instructions
- G06F8/451—Code distribution
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请提供了一种任务处理方法、装置、系统及存储介质,方法应用于任务处理系统,该系统包括汇总节点和多个子节点,多个子节点用于并行处理汇总节点发送的待处理任务,方法包括:对获取到的多个待处理任务执行排序操作,并根据排序结果确定出目标任务;从多个子节点中确定出与目标任务相匹配的多个目标子节点;多个目标子节点执行完各自任务后,得到与目标任务相对应的执行结果。本申请可提高任务处理效率,尤其在大批量执行任务编译部署的场景下,可快速实现程序的发布过程,同时提升了整个系统的性能。
Description
技术领域
本申请涉及任务处理技术领域,尤其是涉及一种任务处理方法、装置、系统及存储介质。
背景技术
目前的程序编译部署方式大多采用Jenkins(一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件项目可以进行持续集成)进行单机编译部署操作,针对大量编译部署任务的情况,需要在单机上依次点击执行操作,任务编译部署效率很低,系统性能也低。
发明内容
本申请的目的在于提供一种任务处理方法、装置、系统及存储介质,能够提高任务处理效率,尤其在大批量执行任务编译部署的场景下,可快速实现程序的发布过程,同时提升了整个系统的性能。
第一方面,本申请实施例提供一种任务处理方法,方法应用于任务处理系统,系统包括汇总节点和多个子节点,多个子节点用于并行处理汇总节点发送的待处理任务,方法包括:对获取到的多个待处理任务执行排序操作,并根据排序结果确定出目标任务;从多个子节点中确定出与目标任务相匹配的多个目标子节点;多个目标子节点执行完各自任务后,得到与目标任务相对应的执行结果。
进一步的,上述对获取到的多个待处理任务执行排序操作,并根据排序结果确定出目标任务,包括:当汇总节点获取到的待处理任务为异常任务,且异常任务的已执行次数未达到预设次数阈值时,将异常任务与汇总节点中的已有待处理任务按照优先级顺序进行排列;并将优先级高的待处理任务确定为目标任务;其中,异常任务为执行结果为失败的任务。
进一步的,上述从多个子节点中确定出与目标任务相匹配的多个目标子节点的步骤,包括:当目标任务为异常任务时,从未处理过异常任务的子节点中确定出多个目标子节点。
进一步的,上述从多个子节点中确定出与目标任务相匹配的多个目标子节点,包括:如果目标任务中包括存在依赖关系的多个子任务,将目标任务中同级并列的多个子任务分别匹配至不同的目标子节点。
进一步的,上述系统还包括任务数据库;任务数据库中存储有历史异常任务的出错点及出错点对应的数据包;目标子节点执行目标任务,包括:当确定目标任务为异常任务时,从任务数据库中获取目标任务的第一出错点对应的第一数据包,基于第一数据包从第一出错点开始执行任务,得到与目标任务相对应的执行结果。
进一步的,上述在多个目标子节点执行完各自任务后,得到与目标任务相对应的执行结果的步骤之后,还包括:将目标任务对应的执行结果存储于任务数据库,用于显示执行结果。
进一步的,上述将目标任务对应的执行结果存储于任务数据库的步骤,包括:当执行结果为失败时,将执行结果中的第二出错点以及与第二出错点对应的第二数据包存储于任务数据库中,从第二出错点处继续执行后续任务。
第二方面,本申请实施例还提供一种任务处理装置,装置应用于任务处理系统,系统包括汇总节点和多个子节点,多个子节点用于并行处理汇总节点发送的待处理任务,装置包括:任务确定模块,用于对获取到的多个待处理任务执排序操作,并根据排序结果确定出目标任务;子节点确定模块,用于从多个子节点中确定出与目标任务相匹配的多个目标子节点;任务执行模块,用于多个目标子节点执行完各自任务后,得到与目标任务相对应的执行结果。
第三方面,本申请实施例还提供一种任务处理系统,系统包括汇总节点和多个子节点;汇总节点分别与每个子节点连接;系统用于执行如第一方面所述的任务处理方法的步骤。
第四方面,本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质存储有计算机可执行指令,计算机可执行指令在被处理器调用和执行时,计算机可执行指令促使处理器实现第一方面所述的方法。
本申请实施例提供的任务处理方法、装置、系统及存储介质中,方法应用于任务处理系统,该系统包括汇总节点和多个子节点,多个子节点用于处理汇总节点中的任务,具体过程包括:系统包括汇总节点和多个子节点,多个子节点用于并行处理汇总节点发送的待处理任务,方法包括:对获取到的多个待处理任务执行排序操作,并根据排序结果确定出目标任务;从多个子节点中确定出与目标任务相匹配的多个目标子节点;多个目标子节点执行完各自任务后,得到与目标任务相对应的执行结果。本申请实施例通过汇总节点和多个子节点,可将原有单机的任务编译操作变为分布式任务处理过程,即通过多个子节点对汇总节点中的待处理任务进行并行任务处理,从而提高任务处理效率,尤其在大批量执行任务编译部署的场景下,可快速实现程序的发布过程,同时提升了整个系统的性能。
附图说明
为了更清楚地说明本申请具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种任务处理系统的结构框图;
图2为本申请实施例提供的另一种任务处理系统的结构框图;
图3为本申请实施例提供的一种任务处理方法的流程图;
图4为本申请实施例提供的另一种任务处理方法的流程图;
图5为本申请实施例提供的另一种任务处理过程示意图;
图6为本申请实施例提供的一种任务处理装置的结构框图。
具体实施方式
下面将结合实施例对本申请的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
现有技术中通常采用jenkins进行单机编译部署操作方式,进行程序任务的发布,针对大量编译部署任务的情况,任务编译部署效率很低,系统性能也很低。基于此,本申请实施例提供一种任务处理方法、装置、系统及存储介质,能够提高任务处理效率,尤其在大批量执行任务编译部署的场景下,可快速实现程序的发布过程,同时提升了整个系统的性能。
为便于对本实施例进行理解,首先对本申请实施例所公开的一种任务处理系统进行详细介绍。
图1为本申请实施例提供的一种任务处理系统的结构框图,该系统包括汇总节点和多个子节点。
每个子节点可以对应于作业机集群中的一个作业机。该作业机集群的实现有多种方式,比如,可以在一台服务器上创建多个节点的集群实例,也可以在多台服务上创建多个节点的集群实例,这个可以根据具体情况进行设置,以此保障当单个服务节点的能力达到瓶颈之后能够进行边界的横向扩容。该作业机可以是服务器、云服务器或虚拟机,其中,服务器可以是支持国际化的x86体系服务器,也可以是支持国产化arm系统服务器。
汇总节点可以获取到多个待处理任务,比如,多个待编译部署任务,这些任务可以是从上游获取到的新任务,也可以是从任务处理结果中反馈回来的异常任务,即执行结果为失败的任务。
在一种优选实施方式中,参见图2所示,上述汇总节点配置有任务消息队列;汇总节点可以将获取到的多个待处理任务,按照预设顺序存储于任务消息队列。通常来说,会按照任务的优先级顺序将多个任务存储于任务消息队列中,或者,也可以按照任务获取的先后顺序存储于任务消息队列中。上述任务消息队列为汇总节点内的持久机制,可以包括以下之一:redis消息队列、Rabbit MQ消息队列、Rocket MQ消息队列或者Kafka消息队列,以保障任务指令执行的严格有序性。
上述多个子节点可以对汇总节点获取的任务进行并行任务处理,提高任务处理效率,在任务处理后,还可以将执行结果存储于任务数据库中,以方便进行执行结果的展示。
上述多个子节点通过汇总节点进行信息交互,汇总节点能把各个子节点的任务处理情况进行收集并展示,其他子节点如果想要获取相邻子节点的情况时,需要访问汇总节点,从而获取到想要的信息。
基于上述任务处理系统的结构,本申请实施例还提供一种任务处理方法,该方法应用于上述任务处理系统,系统包括汇总节点和多个子节点,多个子节点用于处理汇总节点发送的待处理任务,该任务处理方法具体包括以下步骤,参见图3所示:
步骤S302,对获取到的多个待处理任务执行排序操作,并根据排序结果确定出目标任务。
汇总节点获取到的多个待处理任务,可以是从上游获取到的新任务,也可以是从任务处理结果中反馈回来的异常任务。从多个待处理任务中确定出目标任务的方式,可以有多种,比如,汇总节点直接根据任务的接收顺序,确定出当前该处理的目标任务,或者根据任务的优先级顺序,将优先级最高的任务作为目标任务,比如,当汇总节点获取到的任务为异常任务,且已执行次数未超过预设次数阈值时,将异常任务与汇总节点中的已有待处理任务按照优先级顺序进行排列,将优先级最高的任务作为目标任务。
步骤S304,从多个子节点中确定出与目标任务相匹配的多个目标子节点。
确定目标任务匹配的多个目标子节点的方式包括多种,可以根据预设任务分配策略,从多个子节点中确定出与目标任务相匹配的目标子节点;或者,如果目标任务携带有任务标识,将任务标识所指示的子节点作为目标子节点。其中,预设任务分配策略可以包括针对常规任务的分配策略,也可以是针对有依赖关系的多个子任务的分配策略。
步骤S306,多个目标子节点执行完各自任务后,得到与目标任务相对应的执行结果。
在上述确定出目标任务对应的多个目标子节点后,各个目标子节点即可处理各自的任务,在各个目标子节点处理完各自任务后,即可得到目标任务对应的执行结果。实际应用中,目标子节点可以获取到需处理任务的数据包,数据包中包含有具体的令子节点执行动作的指令信息,目标子节点获取到需处理任务的数据包后,即可进行任务处理操作,在各个目标子节点都处理完各自的任务后,得到目标任务对应的执行结果。对于待编译部署的目标任务,通过上述多个目标子节点并行处理方式,即可实现批量编译部署,提高编译部署效率。
本申请实施例提供的任务处理方法,通过汇总节点和多个子节点,可将原有单机的任务编译操作变为分布式任务处理过程,即通过多个子节点对汇总节点中的待处理任务进行并行任务处理,从而提高任务处理效率,尤其在大批量执行任务编译部署的场景下,可快速实现程序的发布过程,同时提升了整个系统的性能。
下面对上述从多个子节点中确定出与目标任务相匹配的多个目标子节点的过程进行详细阐述:
第一种方式,根据预设任务分配策略,从多个子节点中确定出与目标任务相匹配的目标子节点;这里的预设任务分配策略,可以包括多种策略,比如,对于异常任务,需要分配给未处理过该异常任务的子节点来处理,对于目标任务为包括存在依赖关系的多个子任务的情况,可以按照如下方式确定目标子节点:
如果目标任务包括依次依赖的多个子任务,可以将目标任务包含的多个子任务均分配至同一目标子节点;如果目标任务中存在同级并列的多个子任务,将同级并列的多个子任务分别匹配至不同的目标子节点,以进行并行处理。
具体实施中,对于依次依赖的多个子任务,如子任务A、B、C、D,其中,子任务B的处理过程需要依赖子任务A的处理结果,子任务C的处理过程需要依赖子任务B的处理结果,子任务D的处理过程需要依赖子任务C的处理结果,这种情况下,可以将该目标任务同时分配给同一子节点,即同一子节点可以在处理完子任务A后,快速根据子任务A的处理结果处理子任务B,以此类推,直到整个目标任务完成。
对于如果目标任务中包括存在依赖关系的多个子任务,其中,有同级并列的多个子任务,如子任务A、B1、B2、C,其中,子任务B1、B2的处理过程需要依赖子任务A的处理结果,子任务C的处理过程需要依赖子任务B1、B2的处理结果,这种情况下,可以先将子任务A作为目标任务,待子任务A完成后,将子任务B1、B2作为目标任务同时分配给不同的两个子节点进行并行处理,待子任务B1、B2完成后,再将子任务C作为目标任务下发给其他子节点,这样在具有依赖关系或者循环嵌套关系的任务中,实现高任务处理效率,尤其是针对在依赖关系中包含可并行处理的子任务B1、B2的情况时,可以同时由两个目标子节点分别对子任务B1、B2分别进行处理,而避免了过长的等待时间。
第二种方式,如果目标任务携带有任务标识,将任务标识所指示的子节点作为目标子节点。比如,目标任务携带的任务标识表征该目标任务的任务类型为类型1,而子节点2、子节点4是专门负责处理任务类型为类型1的任务,那以就可以确定该目标任务对应的目标子节点为子节点2和子节点4,利用子节点2和子节点4同时并行处理目标任务中的任务,提高处理效率。
为了避免对存在实质问题的异常任务进行反复重新处理,浪费资源,本申请实施例还提供一种对于异常任务的处理方式,具体包括以下步骤:
(1)当汇总节点获取到的任务为异常任务,且已执行次数未达到预设次数阈值时,将异常任务与汇总节点中的已有待处理任务按照优先级顺序进行排列,将优先级最高的任务作为目标任务。
具体实施时,在汇总节点获取到异常任务时,首先判断该异常任务的出错次数是否超过预设次数阈值,比如,阈值为3,如果异常任务的出错次数为2,那么说明该异常任务还可以被重新处理一次。这时,将该异常任务和汇总节点中的已有待处理任务按照优先级顺序进行排列,将优先级最高的任务作为目标任务。
(2)当目标任务为异常任务时,从未处理过该异常任务的子节点中确定出多个目标子节点。
为了避免子节点原因导致任务处理一直出错,本申请实施例中,在对异常任务选择目标子节点时,会从多个子节点中、且未处理过出错任务的剩余子节点中确定出目标子节点。这里也可以在剩余子节点中选择与异常任务的任务标识相匹配的子节点。
现有技术中,在任务处理过程中,如果出现异常,会导致任务执行失败,这种情况下,需要对该任务进行重新处理,这样会使已经处理过的部分任务再重新处理一遍,造成资源浪费,损耗更多的时间。
本申请实施例中,上述系统还包括任务数据库;该任务数据库中存储有历史异常任务的出错点及出错点对应的数据包;以便子节点在需要处理异常任务时可以从出错点开始继续执行后续任务,提高处理效率。
目标子节点执行目标任务的过程,可以包括以下几种情况:
(1)当确定目标任务为异常任务时,从任务数据库中获取目标任务的第一出错点对应的第一数据包,基于第一数据包执行第一出错点后的任务,得到与目标任务相对应的执行结果。
(2)当确定目标任务为非异常任务时,则目标子节点执行该目标任务,得到目标任务相对应的执行结果。
为了避免任务重复执行以及使用户及时了解任务执行情况,在上述当目标子节点确定执行目标任务时,得到与目标任务相对应的编译部署结果的步骤之后,还包括如下步骤:将目标任务对应的执行结果存储于任务数据库,以便显示执行结果。
实际应用中,无论目标任务的执行结果是成功还是失败,都会将执行结果存储于任务数据库中,以待编译部署任务的处理过程为例进行说明,比如,目标任务A,编译部署结果为成功,或者目标任务A,编译部署结果为失败。而当编译部署结果为失败时,还将编译部署结果中第二出错点以及与第二出错点对应的第二数据包存储于任务数据库中,以便从出错点处继续执行后续任务。比如,目标任务A,编译部署结果为失败,出错点为编译。这样便于后续从出错点处继续执行后续任务,减少任务处理时间及占用的系统资源,进一步提高任务处理效率。
需要说明的是,对于上述第(1)种情况,目标任务本身已经是异常任务的情况,如果其编译部署结果还是失败,则需要再次记录其出错点,和已执行次数及执行该任务的子节点。而对于第(2)种情况,目标任务本身是非异常任务的情况,如果其编译部署结果是失败,则首次记录其出错点,和已执行次数及执行该任务的子节点。
具体实施中,任务是按照配置指令段执行的,在任务处理过程中,会记录每个指令段过程,并记录指令段标识,通过指令段标识可以识别出该编译部署结果是成功还是失败。在失败的情况下,目标子节点会将出错点存储于任务数据库中,譬如编译打包过程,需要执行清理、编译、打包三个指令,当编译过程出现问题之后,就会在当前节点终止掉,并记录该任务的出错点为编译,下次不重新设置起始指令的情况下,就从编译指令开始往下执行。
为了便于对方案中任务处理过程的理解,以待编译部署任务为例进行说明,本申请实施例提供另一种任务处理方法,其流程图如图4所示,具体包括以下步骤:
步骤S402,确定出目标任务及其对应的多个目标子节点;具体的确定过程可参见前述内容,在此不再赘述。
步骤S404,判断任务数据库是否存在目标任务对应的编译部署结果;
如果不存在,则执行步骤S406,目标子节点确定执行目标任务,基于目标任务的数据包进行任务处理;
如果存在,则执行步骤S408,基于编译部署结果判断目标任务是否为异常任务,如果确定目标任务为异常任务,执行步骤S410,获取目标任务的第一出错点对应的第一数据包,基于第一数据包执行出错点后的任务;如果确定目标任务为非异常任务,则执行步骤S412,获取下一目标任务,下一目标任务为多个待编译部署任务中,除目标任务之外的任务。
这种方式可以为避免对相同任务的重复处理而导致的资源浪费。
下面列举一种优选的实施方式,当有大批量编译部署工作时,采用多台机器完成大批量的编译部署工作,如图5所示的作业机集群。
基于该作业机集群进行任务处理的过程如下:
参见图5所示,在进行执行任务时,将待编译部署任务都放入到一个待处理作业池,本实施例中,该待处理作业池可采用Kafka消息队列实现,作业机依次的来领取任务(此过程为Kafka的消息生产-消费模型),作业机每领取一个任务进行消费时,都要将这个作业存储到一个已领取作业池中,这个已领取作业池使用数据库进行存储,执行编译过程后的结果(成功或失败)都要存储到这里,方便结果的反馈展示;当在作业处理失败时,除了存储失败结果,还要把出错点也存储到数据库中,便于再次执行任务时从任务出错点开始执行任务。
作业机在处理任务之前,需要判断已领取作业池中是否已存在该任务对应的编译部署结果,如果不存在,则进行目标任务处理,此种存储方式可以解决两个问题,其一是解决消息队列可能产生消息重复消费的问题(消息队列自身的问题,其二可以存储作业执行结果,方便展示以及后续的处理。
作业机在任务处理完成后,会将任务状态进行上报,如将编译部署结果(成功/失败)上报,存储于已领取作业池中,通过展现已领取作业池的数据,可直观的看到批量的任务处理结果,汇总节点还可以通过反馈模块根据任务处理结果进行处理状态的判断,如果任务全部执行完毕则结束该任务,如果是异常任务,则将该异常任务再返回到待处理作业池中进行再次执行。作业机会再次领取上述异常任务,从出错点开始执行,不必从头开始执行。
本申请实施例提供的任务处理方法,能够通过分布式的处理方式,将原有单机的操作变为分布式处理,提高编译效率,尤其在大批量执行编译部署的场景下,可快速实现程序的发布过程。借助Kafka消息队列,实现任务的协调处理,利用数据库存储已领取任务,可避免消息重复消费以及方便展示数据。通过存储错误点,可以在重新执行任务时从出错点开始执行,而不用重新执行任务。
基于上述方法实施例,本申请实施例还提供一种任务处理装置,该装置应用于任务处理系统,系统包括汇总节点和多个子节点,多个子节点用于并行处理汇总节点发送的待处理任务,参见图6所示,该装置包括:
任务确定模块62,用于对获取到的多个待处理任务执排序操作,并根据排序结果确定出目标任务;子节点确定模块64,用于从多个子节点中确定出与目标任务相匹配的多个目标子节点;任务执行模块66,用于多个目标子节点执行完各自任务后,得到与目标任务相对应的执行结果。
上述任务确定模块62,还用于当汇总节点获取到的待处理任务为异常任务,且异常任务的已执行次数未达到预设次数阈值时,将异常任务与汇总节点中的已有待处理任务按照优先级顺序进行排列;并将优先级高的待处理任务确定为目标任务;其中,异常任务为执行结果为失败的任务。
上述子节点确定模块64,还用于当目标任务为异常任务时,从未处理过异常任务的子节点中确定出多个目标子节点。
上述子节点确定模块64,还用于如果目标任务中包括存在依赖关系的多个子任务,将同级并列的多个子任务分别匹配至不同的目标子节点。
上述系统还包括任务数据库;任务数据库中存储有历史异常任务的出错点及出错点对应的数据包;上述任务执行模块66,还用于当确定目标任务为异常任务时,从任务数据库中获取目标任务的第一出错点对应的第一数据包,基于第一数据包从第一出错点开始执行任务,得到与目标任务相对应的执行结果。
上述装置还包括:结果存储模块,用于将目标任务对应的执行结果存储于任务数据库,用于显示执行结果。
上述结果存储模块,还用于当执行结果为失败时,将执行结果中的第二出错点以及与第二出错点对应的第二数据包存储于任务数据库中,从第二出错点处继续执行后续任务。
本申请实施例提供的任务处理装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,任务处理装置的实施例部分未提及之处,可参考前述方法实施例中相应内容。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令在被处理器调用和执行时,该计算机可执行指令促使处理器实现上述方法,具体实现可参见前述方法实施例,在此不再赘述。
本申请实施例所提供的任务处理系统及方法的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对步骤、数字表达式和数值并不限制本申请的范围。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在本申请的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本申请和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本申请的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本申请实施例技术方案的精神和范围,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。
Claims (10)
1.一种任务处理方法,其特征在于,所述方法应用于任务处理系统,所述系统包括汇总节点和多个子节点,所述多个子节点用于并行处理所述汇总节点发送的待处理任务,所述方法包括:
对获取到的多个待处理任务执行排序操作,并根据排序结果确定出目标任务;
从所述多个子节点中确定出与所述目标任务相匹配的多个目标子节点;
所述多个目标子节点执行完各自任务后,得到与所述目标任务相对应的执行结果。
2.根据权利要求1所述的方法,其特征在于,所述对获取到的多个待处理任务执排序操作,并根据排序结果确定出目标任务,包括:
当所述汇总节点获取到的待处理任务为异常任务,且所述异常任务的已执行次数未达到预设次数阈值时,将所述异常任务与汇总节点中的已有待处理任务按照优先级顺序进行排列;并将优先级最高的待处理任务确定为所述目标任务;其中,所述异常任务为执行结果为失败的任务。
3.根据权利要求2所述的方法,其特征在于,从所述多个子节点中确定出与所述目标任务相匹配的多个目标子节点的步骤,包括:
当所述目标任务为异常任务时,从未处理过所述异常任务的子节点中确定出多个所述目标子节点。
4.根据权利要求1所述的方法,其特征在于,从所述多个子节点中确定出与所述目标任务相匹配的多个目标子节点,包括:
如果所述目标任务中包括存在依赖关系的多个子任务,将所述目标任务中同级并列的多个子任务分别匹配至不同的目标子节点。
5.根据权利要求1所述的方法,其特征在于,所述系统还包括任务数据库;所述任务数据库中存储有历史异常任务的出错点及出错点对应的数据包;所述目标子节点执行目标任务,包括:
当确定所述目标任务为异常任务时,从所述任务数据库中获取所述目标任务的第一出错点对应的第一数据包,基于所述第一数据包从第一出错点开始执行任务,得到与所述目标任务相对应的执行结果。
6.根据权利要求5所述的方法,其特征在于,在所述多个目标子节点执行完各自任务后,得到与所述目标任务相对应的执行结果的步骤之后,还包括:
将所述目标任务对应的执行结果存储于任务数据库,用于显示所述执行结果。
7.根据权利要求6所述的方法,其特征在于,将所述目标任务对应的执行结果存储于任务数据库的步骤,包括:
当所述执行结果为失败时,将所述执行结果中的第二出错点以及与所述第二出错点对应的第二数据包存储于所述任务数据库中,从所述第二出错点处继续执行后续任务。
8.一种任务处理装置,其特征在于,所述装置应用于任务处理系统,所述系统包括汇总节点和多个子节点,所述多个子节点用于并行处理所述汇总节点发送的待处理任务,所述装置包括:
任务确定模块,用于对获取到的多个待处理任务执排序操作,并根据排序结果确定出目标任务;
子节点确定模块,用于从所述多个子节点中确定出与所述目标任务相匹配的多个目标子节点;
任务执行模块,用于所述多个目标子节点执行完各自任务后,得到与所述目标任务相对应的执行结果。
9.一种任务处理系统,其特征在于,所述系统包括汇总节点和多个子节点;所述汇总节点分别与每个所述子节点连接;所述系统用于执行如权利要求1-8任一项所述的任务处理方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令在被处理器调用和执行时,计算机可执行指令促使处理器实现权利要求1-8任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110615828.8A CN113391814A (zh) | 2021-06-02 | 2021-06-02 | 任务处理方法、装置、系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110615828.8A CN113391814A (zh) | 2021-06-02 | 2021-06-02 | 任务处理方法、装置、系统及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113391814A true CN113391814A (zh) | 2021-09-14 |
Family
ID=77619976
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110615828.8A Pending CN113391814A (zh) | 2021-06-02 | 2021-06-02 | 任务处理方法、装置、系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113391814A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114500558A (zh) * | 2021-12-21 | 2022-05-13 | 天翼云科技有限公司 | 一种任务分层上报系统及其控制方法 |
CN114860672A (zh) * | 2022-07-01 | 2022-08-05 | 苏州优鲜信网络生活服务科技有限公司 | 批处理数据任务的节点管理方法与系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110113387A (zh) * | 2019-04-17 | 2019-08-09 | 深圳前海微众银行股份有限公司 | 一种基于分布式批量处理系统的处理方法、装置及系统 |
CN110968406A (zh) * | 2018-09-30 | 2020-04-07 | 北京国双科技有限公司 | 处理任务的方法、装置、存储介质和处理器 |
WO2020098025A1 (zh) * | 2018-11-16 | 2020-05-22 | 网宿科技股份有限公司 | 一种静态路由的部署方法、设备及系统 |
CN112463123A (zh) * | 2020-11-25 | 2021-03-09 | 北京字跳网络技术有限公司 | 任务编译方法、装置、网络节点、系统及存储介质 |
CN112764911A (zh) * | 2021-01-29 | 2021-05-07 | 建信金融科技有限责任公司 | 一种任务调度方法、装置、电子设备及可读存储介质 |
-
2021
- 2021-06-02 CN CN202110615828.8A patent/CN113391814A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110968406A (zh) * | 2018-09-30 | 2020-04-07 | 北京国双科技有限公司 | 处理任务的方法、装置、存储介质和处理器 |
WO2020098025A1 (zh) * | 2018-11-16 | 2020-05-22 | 网宿科技股份有限公司 | 一种静态路由的部署方法、设备及系统 |
CN110113387A (zh) * | 2019-04-17 | 2019-08-09 | 深圳前海微众银行股份有限公司 | 一种基于分布式批量处理系统的处理方法、装置及系统 |
CN112463123A (zh) * | 2020-11-25 | 2021-03-09 | 北京字跳网络技术有限公司 | 任务编译方法、装置、网络节点、系统及存储介质 |
CN112764911A (zh) * | 2021-01-29 | 2021-05-07 | 建信金融科技有限责任公司 | 一种任务调度方法、装置、电子设备及可读存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114500558A (zh) * | 2021-12-21 | 2022-05-13 | 天翼云科技有限公司 | 一种任务分层上报系统及其控制方法 |
CN114860672A (zh) * | 2022-07-01 | 2022-08-05 | 苏州优鲜信网络生活服务科技有限公司 | 批处理数据任务的节点管理方法与系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107688496B (zh) | 任务分布式处理方法、装置、存储介质和服务器 | |
CN108268372B (zh) | Mock测试处理方法、装置、存储介质和计算机设备 | |
CN113391814A (zh) | 任务处理方法、装置、系统及存储介质 | |
CN111464380A (zh) | 多个业务项目的并行测试方法、装置及系统 | |
CN111240806B (zh) | 一种分布式容器镜像构建调度方法 | |
JP2003280924A (ja) | 通信設備で階層構造を有するイベントの処理方法 | |
CN112214289A (zh) | 一种任务调度方法、装置及服务器、存储介质 | |
CN112685175A (zh) | 一种服务拓扑图的构建方法、装置和计算机可读存储介质 | |
CN113467905A (zh) | 一种任务处理方法及系统 | |
CN113157411A (zh) | 一种基于Celery的可靠可配置任务系统及装置 | |
CN112667383A (zh) | 一种任务执行及调度方法、系统、装置、计算设备及介质 | |
CN112559143A (zh) | 任务调度方法、系统及计算设备 | |
CN106293911A (zh) | 分布式调度系统、方法 | |
CN108769118A (zh) | 一种分布式系统中主节点的选取方法及装置 | |
CN111506388B (zh) | 容器性能探测方法、容器管理平台及计算机存储介质 | |
CN114168252A (zh) | 信息处理系统及方法、网络方案推荐组件及方法 | |
CN110569115B (zh) | 多点部署的进程管理方法及进程的争夺方法 | |
CN108833532B (zh) | 基于物联网的服务处理方法、装置和系统 | |
CN112286580B (zh) | 一种用于处理流水线作业的方法、装置及计算机设备 | |
CN115632944A (zh) | 一种节点配置方法、装置、设备、可读存储介质及服务器 | |
CN113342499B (zh) | 分布式任务调用方法、装置、设备、存储介质、程序产品 | |
CN110874319A (zh) | 自动化测试方法、平台、设备及计算机可读存储介质 | |
CN112367205B (zh) | 一种对http调度请求的处理方法及调度系统 | |
CN109101260B (zh) | 一种节点软件的升级方法、装置和计算机可读存储介质 | |
CN111030874B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210914 |