CN115002124A - 分布式任务调度处理方法、装置和设备 - Google Patents
分布式任务调度处理方法、装置和设备 Download PDFInfo
- Publication number
- CN115002124A CN115002124A CN202210913447.2A CN202210913447A CN115002124A CN 115002124 A CN115002124 A CN 115002124A CN 202210913447 A CN202210913447 A CN 202210913447A CN 115002124 A CN115002124 A CN 115002124A
- Authority
- CN
- China
- Prior art keywords
- task
- server
- subdata
- data
- task receiving
- 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
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5038—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/48—Indexing scheme relating to G06F9/48
- G06F2209/484—Precedence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5021—Priority
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明涉及一种分布式任务调度处理方法、装置及设备,涉及数据处理技术领域,通过设定定时器,根据定时器设定的时间,从而在启动时间在服务器集中确定并触发启动目标服务器;在包括的至少两台服务器中,可以由任一服务器进行数据分配,对目标数据进行数据切分,将切分后的子数据分发至任务接收节点,以使每个任务接收节点根据接收成功的子数据进行任务处理;每台服务器包括至少一个任务接收节点。因此,本申请中通过设置至少两台服务器,其中任一服务器均可以进行任务数据分配,通过去中心化提升了数据处理速度,无需引入复杂的开源组件,节约成本、使用简单、运维方便。
Description
技术领域
本发明涉及数据处理技术领域,具体涉及一种分布式任务调度处理方法、装置和设备。
背景技术
数据时代的到来,使得各行各业的数据量飞速上升,数据处理的难度也逐步提高。以路网部中心为例,在很多场景,都需要对获取的大量数据进行及时处理,例如,出口和省汇总记录匹配、出口交易打包给发行方等,均需要及时对数据进行处理。
相关技术中,通常设置单进程定时调度任务,来对数据进行处理;但是,单进程定时调度任务处理速度已难以满足人们的需求。一些开源的分布式调度任务虽然满足了人们需求,但是,其使用了复杂的实现方式,需要引入复杂的开源组件,增加成本、使用复杂、运维困难。例如,需要搭建注册中心监控心跳,来监控节点的活动状态;为了执行业务逻辑,需要按照调度框架规则来改造业务代码,需要运维人员监控整个系统的调度事件、日志。
因此,如何快捷、简便地实现大量数据的处理,成为现有技术中亟待解决的技术问题。
发明内容
有鉴于此,本发明的目的在于提供一种分布式任务调度处理方法、装置和设备,以克服目前引入复杂的开源组件,增加成本、使用复杂、运维困难的技术问题。
为实现以上目的,本发明采用如下技术方案:
一方面,一种分布式任务调度处理方法,包括:
根据定时器确定每个启动时间,在每个所述启动时间根据预设规则在服务器集中确定并触发启动目标服务器;所述服务器集中包括至少两台服务器;
基于任一所述目标服务器获取对应的目标数据,并对所述目标数据进行数据切分,将切分后的子数据分发至任务接收节点,以使每个所述任务接收节点根据接收成功的子数据进行任务处理;每台所述服务器包括至少一个所述任务接收节点。
可选的,所述对所述目标数据进行数据切分,将切分后的子数据分发至任务接收节点,以使每个所述任务接收节点根据接收成功的子数据进行任务处理,包括:
根据所述目标数据的passId的哈希值将所述目标数据切割为预设份数的子数据;
对所述子数据进行编号,每个编号对应一份子数据;基于负载均衡,调用匹配的任务接收接口,以将切割后的子数据的编号分发至任务接收节点,以使每个所述任务接收节点根据接收成功的所述编号确定对应的子数据,从而根据所述子数据进行任务处理。
可选的,所述将切分后的子数据分发至任务接收节点之后,还包括:
在每个任务接收节点,判断待处理任务数量是否大于节点最大任务数;
若所述待处理任务数量未大于节点最大任务数,则在所述任务接收节点接收所述子数据;若所述待处理任务数量大于节点最大任务数,则在所述任务接收节点拒绝接收所述子数据,以使所述子数据分配至其他所述任务接收节点。
可选的,在所述根据定时器确定每个启动时间,在每个所述启动时间根据预设规则在服务器集中确定并触发启动目标服务器之前,还包括:接收服务器优先级设定请求;根据所述服务器优先级设定请求,设定所述服务器集中服务器的优先级;
所述根据预设规则在服务器集中确定并触发启动目标服务器,包括:
根据所述服务器集中服务器的优先级,确定优先级最高的服务器为目标服务器,触发启动所述目标服务器。
可选的,在所述每个所述任务接收节点根据接收成功的子数据进行任务处理之后,还包括:
在每个所述任务接收节点更改所述子数据对应任务的任务完成状态;
对每个所述任务接收节点的任务处理进行日志记录。
又一方面,一种分布式任务调度处理装置,包括:
任务分配启动模块,用于根据定时器确定每个启动时间,在每个所述启动时间根据预设规则在服务器集中确定并触发启动目标服务器;所述服务器集中包括至少两台服务器;
任务分配模块,用于基于任一所述目标服务器获取对应的目标数据,并对所述目标数据进行数据切分,将切分后的子数据分发至任务接收节点,以使每个所述任务接收节点根据接收成功的子数据进行任务处理;每台所述服务器包括至少一个所述任务接收节点。
可选的,所述任务分配模块,具体用于根据所述目标数据的passId的哈希值将所述目标数据切割为预设份数的子数据;对所述子数据进行编号,每个编号对应一份子数据;基于负载均衡,调用匹配的任务接收接口,以将切割后的子数据的编号分发至任务接收节点,以使每个所述任务接收节点根据接收成功的所述编号确定对应的子数据,从而根据所述子数据进行任务处理。
可选的,所述任务分配模块,还用于在每个任务接收节点,判断待处理任务数量是否大于节点最大任务数;若所述待处理任务数量未大于节点最大任务数,则在所述任务接收节点接收所述子数据;若所述待处理任务数量大于节点最大任务数,则在所述任务接收节点拒绝接收所述子数据,以使所述子数据分配至其他所述任务接收节点。
可选的,所述任务分配启动模块,还用于接收服务器优先级设定请求;根据所述服务器优先级设定请求,设定所述服务器集中服务器的优先级;根据所述服务器集中服务器的优先级,确定优先级最高的服务器为目标服务器,触发所述目标服务器。
又一方面,一种分布式任务调度处理设备,包括处理器和存储器,所述处理器与存储器相连:
其中,所述处理器,用于调用并执行所述存储器中存储的程序;
所述存储器,用于存储所述程序,所述程序至少用于执行上述任一项所述的一种分布式任务调度处理方法。
本发明实施例提供的分布式任务调度处理方法、装置及设备,通过设定定时器,根据定时器设定的时间,确定启动时间,从而在启动时间在服务器集中确定并触发启动目标服务器;在包括的至少两台服务器中,可以由任一服务器进行数据分配,对目标数据进行数据切分,将切分后的子数据分发至任务接收节点,以使每个任务接收节点根据接收成功的子数据进行任务处理;每台服务器包括至少一个任务接收节点。因此,本申请中通过设置至少两台服务器,其中任一服务器均可以进行任务数据分配,通过去中心化提升了数据处理速度,无需引入复杂的开源组件,节约成本、使用简单、运维方便。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种分布式任务调度处理方法的流程示意图;
图2为本发明实施例提供的一种分布式任务调度处理装置的结构示意图;
图3为本发明实施例提供的一种分布式任务调度处理设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将对本发明的技术方案进行详细的描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其它实施方式,都属于本发明所保护的范围。
相关技术中,通常设置单进程定时调度任务,来对数据进行处理;但是,单进程定时调度任务处理速度已难以满足人们的需求。一些开源的分布式调度任务虽然满足了人们需求,但是,其使用了复杂的实现方式:搭建注册中心监控心跳,来监控节点的活动状态;为了执行业务逻辑,需要按照调度框架规则来改造业务代码,需要运维人员监控整个系统的调度事件、日志。
因此,如何快捷、简便地实现大量数据的处理,成为现有技术中亟待解决的技术问题。
基于此,本发明实施例提供了一种分布式任务调度处理方法、装置及设备。
图1为本发明实施例提供的一种分布式任务调度处理方法的流程示意图,请参阅图1,本实施例可以包括以下步骤:
步骤S1、根据定时器确定每个启动时间,在每个启动时间根据预设规则在服务器集中确定并触发启动目标服务器;服务器集中包括至少两台服务器。
在一个具体的实现过程中,可以设置分布式任务调度处理系统来执行本申请的分布式任务调度处理方法的各个步骤。其中,分布式任务调度处理系统可以为一个在线运行的系统,分布式任务调度处理系统的运行环境中可以设置至少两台服务器,例如,在本申请中可以设置8台服务器组合服务器集,共同执行任务调度处理任务。
根据定时器,设定数据处理的时间,例如,可以设定每3分钟处理一次,或者,每5分钟处理一次等,本申请中不做具体限定,用户可根据自己的需求进行设定。
在设定好定时器后,可以根据定时器确定每次的启动时间,当达到启动时间时,可以在8台服务器中根据预设规则确定目标服务器,并触发启动目标服务器。其中,预设规则可以是按顺序启动,例如,对8台服务器进行编号,分别为服务器1号、服务器2号、服务器3号、服务器4号、服务器5号、服务器6号、服务器7号、服务器8号,按编号轮流启动;也可以是随机启动;也可以是设置优先级,根据优先级进行启动。启动的目标服务器执行任务分配工作。其中,定时器根据集群互斥锁保证了只有一个服务器运行分配任务。
在一些实施例中,在根据定时器确定每个启动时间,在每个启动时间根据预设规则在服务器集中确定并触发启动目标服务器之前,还包括:接收服务器优先级设定请求;根据服务器优先级设定请求,设定服务器集中服务器的优先级;根据预设规则在服务器集中确定并触发启动目标服务器,包括:根据服务器集中服务器的优先级,确定优先级最高的服务器为目标服务器,触发目标服务器。
例如,用户可以设置服务器的优先级,如,可以设定8台服务器中的第1台服务器优先级最高,第2台优先级第二等,用户可以需求进行设置。在优先级设置成功后,在到达定时器的时间时,优先确定优先级最高的服务器为目标服务器,进行启动。
可以理解的是,通过设置服务器的优先级,可以使得服务器的启动更加符合用户需求,便于用户的使用。
步骤S2、基于任一目标服务器获取对应的目标数据,并对目标数据进行数据切分,将切分后的子数据分发至任务接收节点,以使每个任务接收节点根据接收成功的子数据进行任务处理;每台服务器包括至少一个任务接收节点。
在目标服务器启动后,获取到对应的目标数据,并将目标数据进行数据切分,从而将切分后的子数据进行数据分发,分发至任务接收节点,每个任务接收节点收到子数据后,根据子数据进行任务处理。其中,每个任务接收节点可以为每台服务器,也可以在每台服务器设置至少一个任务接收节点来接收数据。
在一些实施例中,对目标数据进行数据切分,将切分后的子数据分发至任务接收节点,以使每个任务接收节点根据接收成功的子数据进行任务处理,包括:根据目标数据的passId(通信身份)的哈希值将目标数据切割为预设份数的子数据;对子数据进行编号,每个编号对应一份子数据;基于负载均衡,调用匹配的任务接收接口,以将切割后的子数据的编号分发至任务接收节点,以使每个任务接收节点根据接收成功的编号确定对应的子数据,从而根据子数据进行任务处理。
例如,可以把目标数据按照passId的哈希(hash)值切割为128份子数据,通过请求系统负载均衡,以通用的http接口调用匹配的任务接收接口。其中,请求参数可以包含一个0到127的key,表示分配的是哪份子数据。任务接收节点在接收到分配的数据编号后,根据数据编号key查找到对应的子数据,从而根据子数据进行任务处理。
可以理解的是,本申请中,通过设置passId的哈希(hash)值进行数据切分,在数据接收成功后,根据key对应查找子数据,避免直接对大量数据进行切分,提升了数据分割的准确性和便捷性。
在一些实施例中,将切分后的子数据分发至任务接收节点之后,还包括:在每个任务接收节点,判断待处理任务数量是否大于节点最大任务数;若待处理任务数量未大于节点最大任务数,则在任务接收节点接收子数据;若待处理任务数量大于节点最大任务数,则在任务接收节点拒绝接收子数据,以使子数据分配至其他任务接收节点。
例如,可以设置每个任务接收节点的节点最大任务数,在任务接收节点收到分发的数据时,可以判断该任务接收节点的待处理任务数量是否大于该任务接收节点的节点最大任务数,当该任务接收节点的待处理任务数量大于该任务接收节点的节点最大任务数时,则拒绝接收分发的数据,返回任务分发失败,返回失败后分配的任务数据,重复请求负载均衡,最终把数据均匀分配到8台服务器上;当该任务接收节点的待处理任务数量未大于该任务接收节点的节点最大任务数时,则接收分发的数据。
本申请中,通过已有的负载均衡算法完成数据均匀分配。因为是请求的负载均衡,为确保任务能分配均匀,请求参数可以设置taskNumPerNode(即每个节点可运行的最大任务数),由接收任务的节点判断自己待处理的任务数是否小于taskNumPerNode,如小于可接受任务,如不小于拒绝接收,由任务分配定时器重新发送http请求,尝试把任务分配到其它节点。
可以理解的是,本申请中通过设置每个任务接收节点的节点最大任务数,从而使得每个任务接收节点可以正常运行,保证了每个任务接收节点运行的安全性。
在一些实施例中,在每个任务接收节点根据接收成功的子数据进行任务处理之后,还包括:在每个任务接收节点更改子数据对应任务的任务完成状态;对每个任务接收节点的任务处理进行日志记录。
例如,在每个任务接收节点进行任务处理后,可以更改任务完成状态为已完成,从而便于用户查看。同时,可以对每个任务接收节点的任务处理过程进行详细日志记录,以便于用户查看。
本申请中,各阶段并行处理数据,8个接口属于对等关系。
本发明实施例提供的分布式任务调度处理方法,通过设定定时器,根据定时器设定的时间,确定启动时间,从而在启动时间在服务器集中确定并触发启动目标服务器;在包括的至少两台服务器中,可以由任一服务器进行数据分配,对目标数据进行数据切分,将切分后的子数据分发至任务接收节点,以使每个任务接收节点根据接收成功的子数据进行任务处理;每台服务器包括至少一个任务接收节点。因此,本申请中通过设置至少两台服务器,其中任一服务器均可以进行任务数据分配,通过去中心化提升了数据处理速度,无需引入复杂的开源组件,节约成本、使用简单、运维方便,无需搭建注册中心,也无需运维人员监控调度事件和日志,也无需按照调度框架规则来改造业务代码,方便、快捷。
本申请提供的技术方案,轻量级,易理解,开发快,无侵入;系统自身完成任务分配和接受;采用现有的接口方式实现,没采用复杂的tcp协议,方便、快捷,容易实现;节点探活也是使用现有的负载均衡 ;定时器调度使用现有技术中的定时器,可在先启停定时器、修改cron(计划任务)表达式,方便快捷;本申请可以只部署一套系统,运维简单、排查问题简单;本申请扩展性强,加节点后只需要改taskNumPerNode(任务接收节点)。
基于一个总的发明构思,本发明实施例还提供一种分布式任务调度处理装置。
本发明还提供了一种分布式任务调度处理装置,用于实现上述方法实施例。图2为本发明实施例提供的一种分布式任务调度处理装置的结构示意图,请参阅图2,本发明实施例提供的装置,可以包括以下结构:
任务分配启动模块21,用于根据定时器确定每个启动时间,在每个启动时间根据预设规则在服务器集中确定并触发启动目标服务器;服务器集中包括至少两台服务器;
任务分配模块22,用于基于任一目标服务器获取对应的目标数据,并对目标数据进行数据切分,将切分后的子数据分发至任务接收节点,以使每个任务接收节点根据接收成功的子数据进行任务处理;每台服务器包括至少一个任务接收节点。
可选的,任务分配模块,具体用于根据目标数据的passId的哈希值将目标数据切割为预设份数的子数据;对子数据进行编号,每个编号对应一份子数据;基于负载均衡,调用匹配的任务接收接口,以将切割后的子数据的编号分发至任务接收节点,以使每个任务接收节点根据接收成功的编号确定对应的子数据,从而根据子数据进行任务处理。
可选的,任务分配模块,还用于在每个任务接收节点,判断待处理任务数量是否大于节点最大任务数;若待处理任务数量未大于节点最大任务数,则在任务接收节点接收子数据;若待处理任务数量大于节点最大任务数,则在任务接收节点拒绝接收子数据,以使子数据分配至其他任务接收节点。
可选的,任务分配启动模块,还用于接收服务器优先级设定请求;根据服务器优先级设定请求,设定服务器集中服务器的优先级;根据服务器集中服务器的优先级,确定优先级最高的服务器为目标服务器,触发目标服务器。
可选的,任务分配模块,还用于在每个任务接收节点更改子数据对应任务的任务完成状态;对每个任务接收节点的任务处理进行日志记录。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本发明实施例提供的分布式任务调度处理装置,通过设定定时器,根据定时器设定的时间,确定启动时间,从而在启动时间在服务器集中确定并触发启动目标服务器;在包括的至少两台服务器中,可以由任一服务器进行数据分配,对目标数据进行数据切分,将切分后的子数据分发至任务接收节点,以使每个任务接收节点根据接收成功的子数据进行任务处理;每台服务器包括至少一个任务接收节点。因此,本申请中通过设置至少两台服务器,其中任一服务器均可以进行任务数据分配,通过去中心化提升了数据处理速度,方便、快捷。
基于一个总的发明构思,本发明实施例还提供一种分布式任务调度处理设备。
本发明还提供了一种分布式任务调度处理设备,用于实现上述方法实施例。图3为本发明实施例提供的一种分布式任务调度处理设备的结构示意图。如图3所示,本实施例的分布式任务调度处理设备包括处理器31和存储器32,处理器31与存储器32相连。其中,处理器31用于调用并执行存储器32中存储的程序;存储器32用于存储程序,程序至少用于执行以上实施例中的分布式任务调度处理方法。
本申请实施例提供的分布式任务调度处理设备的具体实施方案可以参考以上任意实施例的分布式任务调度处理方法的实施方式,此处不再赘述。
可以理解的是,上述各实施例中相同或相似部分可以相互参考,在一些实施例中未详细说明的内容可以参见其他实施例中相同或相似的内容。
需要说明的是,在本发明的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义是指至少两个。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (10)
1.一种分布式任务调度处理方法,其特征在于,包括:
根据定时器确定每个启动时间,在每个所述启动时间根据预设规则在服务器集中确定并触发启动目标服务器;所述服务器集中包括至少两台服务器;
基于任一所述目标服务器获取对应的目标数据,并对所述目标数据进行数据切分,将切分后的子数据分发至任务接收节点,以使每个所述任务接收节点根据接收成功的子数据进行任务处理;每台所述服务器包括至少一个所述任务接收节点。
2.根据权利要求1所述的方法,其特征在于,所述对所述目标数据进行数据切分,将切分后的子数据分发至任务接收节点,以使每个所述任务接收节点根据接收成功的子数据进行任务处理,包括:
根据所述目标数据的passId的哈希值将所述目标数据切割为预设份数的子数据;
对所述子数据进行编号,每个编号对应一份子数据;基于负载均衡,调用匹配的任务接收接口,以将切割后的子数据的编号分发至任务接收节点,以使每个所述任务接收节点根据接收成功的所述编号确定对应的子数据,从而根据所述子数据进行任务处理。
3.根据权利要求1所述的方法,其特征在于,所述将切分后的子数据分发至任务接收节点之后,还包括:
在每个任务接收节点,判断待处理任务数量是否大于节点最大任务数;
若所述待处理任务数量未大于节点最大任务数,则在所述任务接收节点接收所述子数据;若所述待处理任务数量大于节点最大任务数,则在所述任务接收节点拒绝接收所述子数据,以使所述子数据分配至其他所述任务接收节点。
4.根据权利要求1所述的方法,其特征在于,在所述根据定时器确定每个启动时间,在每个所述启动时间根据预设规则在服务器集中确定并触发启动目标服务器之前,还包括:接收服务器优先级设定请求;根据所述服务器优先级设定请求,设定所述服务器集中服务器的优先级;
所述根据预设规则在服务器集中确定并触发启动目标服务器,包括:
根据所述服务器集中服务器的优先级,确定优先级最高的服务器为目标服务器,触发启动所述目标服务器。
5.根据权利要求1所述的方法,其特征在于,在所述每个所述任务接收节点根据接收成功的子数据进行任务处理之后,还包括:
在每个所述任务接收节点更改所述子数据对应任务的任务完成状态;
对每个所述任务接收节点的任务处理进行日志记录。
6.一种分布式任务调度处理装置,其特征在于,包括:
任务分配启动模块,用于根据定时器确定每个启动时间,在每个所述启动时间根据预设规则在服务器集中确定并触发启动目标服务器;所述服务器集中包括至少两台服务器;
任务分配模块,用于基于任一所述目标服务器获取对应的目标数据,并对所述目标数据进行数据切分,将切分后的子数据分发至任务接收节点,以使每个所述任务接收节点根据接收成功的子数据进行任务处理;每台所述服务器包括至少一个所述任务接收节点。
7.根据权利要求6所述的装置,其特征在于,所述任务分配模块,具体用于根据所述目标数据的passId的哈希值将所述目标数据切割为预设份数的子数据;对所述子数据进行编号,每个编号对应一份子数据;基于负载均衡,调用匹配的任务接收接口,以将切割后的子数据的编号分发至任务接收节点,以使每个所述任务接收节点根据接收成功的所述编号确定对应的子数据,从而根据所述子数据进行任务处理。
8.根据权利要求6所述的装置,其特征在于,所述任务分配模块,还用于在每个任务接收节点,判断待处理任务数量是否大于节点最大任务数;若所述待处理任务数量未大于节点最大任务数,则在所述任务接收节点接收所述子数据;若所述待处理任务数量大于节点最大任务数,则在所述任务接收节点拒绝接收所述子数据,以使所述子数据分配至其他所述任务接收节点。
9.根据权利要求6所述的装置,其特征在于,所述任务分配启动模块,还用于接收服务器优先级设定请求;根据所述服务器优先级设定请求,设定所述服务器集中服务器的优先级;根据所述服务器集中服务器的优先级,确定优先级最高的服务器为目标服务器,触发所述目标服务器。
10.一种分布式任务调度处理设备,其特征在于,包括处理器和存储器,所述处理器与存储器相连:
其中,所述处理器,用于调用并执行所述存储器中存储的程序;
所述存储器,用于存储所述程序,所述程序至少用于执行权利要求1-5任一项所述的一种分布式任务调度处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210913447.2A CN115002124A (zh) | 2022-08-01 | 2022-08-01 | 分布式任务调度处理方法、装置和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210913447.2A CN115002124A (zh) | 2022-08-01 | 2022-08-01 | 分布式任务调度处理方法、装置和设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115002124A true CN115002124A (zh) | 2022-09-02 |
Family
ID=83021068
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210913447.2A Pending CN115002124A (zh) | 2022-08-01 | 2022-08-01 | 分布式任务调度处理方法、装置和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115002124A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070005732A1 (en) * | 2005-06-30 | 2007-01-04 | Microsoft Corporation | Extensible and distributed job execution service in a server farm |
CN103581289A (zh) * | 2012-08-09 | 2014-02-12 | 国际商业机器公司 | 有助于分布式计算系统的服务提供和协调的方法和系统 |
CN106131185A (zh) * | 2016-07-13 | 2016-11-16 | 腾讯科技(深圳)有限公司 | 一种视频数据的处理方法、装置及系统 |
CN110247954A (zh) * | 2019-05-15 | 2019-09-17 | 南京苏宁软件技术有限公司 | 一种分布式任务的调度方法及系统 |
CN111259060A (zh) * | 2020-02-18 | 2020-06-09 | 北京百度网讯科技有限公司 | 数据查询的方法及装置 |
CN112579267A (zh) * | 2020-09-28 | 2021-03-30 | 京信数据科技有限公司 | 一种去中心化大数据作业流调度方法及装置 |
CN112817752A (zh) * | 2021-01-21 | 2021-05-18 | 西安交通大学 | 一种分布式数据库动态负载均衡方法 |
-
2022
- 2022-08-01 CN CN202210913447.2A patent/CN115002124A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070005732A1 (en) * | 2005-06-30 | 2007-01-04 | Microsoft Corporation | Extensible and distributed job execution service in a server farm |
CN103581289A (zh) * | 2012-08-09 | 2014-02-12 | 国际商业机器公司 | 有助于分布式计算系统的服务提供和协调的方法和系统 |
CN106131185A (zh) * | 2016-07-13 | 2016-11-16 | 腾讯科技(深圳)有限公司 | 一种视频数据的处理方法、装置及系统 |
CN110247954A (zh) * | 2019-05-15 | 2019-09-17 | 南京苏宁软件技术有限公司 | 一种分布式任务的调度方法及系统 |
CN111259060A (zh) * | 2020-02-18 | 2020-06-09 | 北京百度网讯科技有限公司 | 数据查询的方法及装置 |
CN112579267A (zh) * | 2020-09-28 | 2021-03-30 | 京信数据科技有限公司 | 一种去中心化大数据作业流调度方法及装置 |
CN112817752A (zh) * | 2021-01-21 | 2021-05-18 | 西安交通大学 | 一种分布式数据库动态负载均衡方法 |
Non-Patent Citations (1)
Title |
---|
郑响萍等: "基于分布式软负载均衡的重试框架设计与实现", 《工业控制计算机》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11842221B2 (en) | Techniques for utilizing directed acyclic graphs for deployment instructions | |
CN108549580B (zh) | 自动部署Kubernetes从节点的方法及终端设备 | |
US10552247B2 (en) | Real-time monitoring alert chaining, root cause analysis, and optimization | |
US10630566B1 (en) | Tightly-coupled external cluster monitoring | |
CN109379238A (zh) | 一种分布式集群的ctdb主节点选举方法、装置及系统 | |
CN112544054A (zh) | 通过众包安全性解决方案自动生成威胁修复步骤 | |
CN111355622A (zh) | 容器的业务监控方法、系统和计算机可读存储介质 | |
CN110673933A (zh) | 基于ZooKeeper的分布式异步队列实现方法、装置、设备及介质 | |
WO2021150435A1 (en) | Techniques for utilizing directed acyclic graphs for deployment instructions | |
CN110275793B (zh) | 一种用于MongoDB数据分片集群的检测方法及设备 | |
CN110275992B (zh) | 应急处理方法、装置、服务器及计算机可读存储介质 | |
CN114416490A (zh) | 基于区块链的监控报警方法、装置、电子设备及存储介质 | |
US9317355B2 (en) | Dynamically determining an external systems management application to report system errors | |
CN107426012B (zh) | 一种基于超融合架构的故障恢复方法及其装置 | |
CN115002124A (zh) | 分布式任务调度处理方法、装置和设备 | |
CN116633766A (zh) | 故障处理方法、装置、电子设备及存储介质 | |
US11671458B1 (en) | Coherent method of consistency for purpose of cloud authorization | |
CN115065597A (zh) | 一种容器资源配置方法、装置、介质和设备 | |
CN114756527A (zh) | Redis集群的扩容方法、装置、电子设备和存储介质 | |
CN114564530A (zh) | 一种数据库访问方法、装置、设备及存储介质 | |
CN108551484B (zh) | 用户信息同步方法、装置、计算机装置及存储介质 | |
CN111221847B (zh) | 监控数据存储方法、装置及计算机可读存储介质 | |
CN113064814A (zh) | 组件引用数据的处理方法及装置、存储介质及电子装置 | |
US11762706B1 (en) | Computing environment pooling | |
CN110677497A (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 |
Application publication date: 20220902 |
|
RJ01 | Rejection of invention patent application after publication |