CN114385341A - 一种分布式任务调度方法及调度平台 - Google Patents
一种分布式任务调度方法及调度平台 Download PDFInfo
- Publication number
- CN114385341A CN114385341A CN202210291569.2A CN202210291569A CN114385341A CN 114385341 A CN114385341 A CN 114385341A CN 202210291569 A CN202210291569 A CN 202210291569A CN 114385341 A CN114385341 A CN 114385341A
- Authority
- CN
- China
- Prior art keywords
- task
- executor
- scheduling
- center
- task executor
- 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
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 Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种分布式任务调度方法及调度平台,包括如下步骤:步骤一,任务执行器根据配置的调度中心的地址,自动注册到调度中心;步骤二,判断是否达到任务触发条件,若达到任务触发条件,则调度中心下发任务;步骤三,任务执行器执行调度中心下发的任务,并把执行结果放入内存队列中、把执行日志写入日志文件中;步骤四,执行器的回调线程消费内存队列中的执行结果,并上报给调度中心;步骤五,当用户在调度中心查看任务日志,调度中心请求任务执行器,任务执行器读取任务日志文件并返回日志详情,完成任务调度。通过本发明所提供的方案,可以提高任务执行速率。
Description
技术领域
本发明涉及数据处理领域,具体是一种分布式任务调度方法及调度平台。
背景技术
目前,随着互联网业务的发展,多任务、高并发场景已经变得非常普遍,单个任务的复杂度和并发任务的数量日益增加。复杂度较高的任务或者并发的多个任务在单一的执行机器上独立完成,会造成执行机器的压力过大,甚至有可能出现复杂度过高的单个任务或者数量过多的多个任务,无法在单一的执行机器上独立完成。为了减轻执行机器的压力,保证服务的顺利完成,可以通过分布式部署的多个执行机器执行任务,而针对任务,以及分布式部署的多个执行机器,如何进行管理是非常重要的问题。
发明内容
本发明的目的在于克服现有技术的不足,提供一种分布式任务调度方法,包括如下步骤:
步骤一,任务执行器根据配置的调度中心的地址,自动注册到调度中心;
步骤二,判断是否达到任务触发条件,若达到任务触发条件,则调度中心下发任务;
步骤三,任务执行器执行调度中心下发的任务,并把执行结果放入内存队列中、把执行日志写入日志文件中;
步骤四,任务执行器的回调线程消费内存队列中的执行结果,将执行结果上报给调度中心;
步骤五,当用户在调度中心查看任务日志,根据任务日志中的任务执行器,调度中心请求对应的任务执行器,任务执行器读取任务日志文件并返回日志详情到调度中心,完成任务调度。
进一步的,所述的任务执行器根据配置的调度中心的地址,自动注册到调度中心,包括如下过程:
调度中心接收任务执行器的信号;所述调度中心首先创建所述任务执行器对应的临时性节点;
调度中心向所述任务执行器发送查询请求,当所述任务执行器对应的临时性节点回应查询请求时,将所述任务执行器的状态标记为可用状态,并将临时性节点创建为永久性节点;
所述调度中心接收任务,通过预设调度策略,将所述任务分配给各个可用任务执行器,得到各个所述可用任务执行器的待执行任务,并下发各个所述可用任务执行器的待执行任务,其中,可用任务执行器是状态被标记为可用状态的任务执行器;所述可用任务执行器接收并执行任务。
进一步的,所述将临时性节点创建为永久性节点包括:
调度中心在所述临时性节点处创建所述任务执行器对应的所述持久性节点,创建完成后,将任务执行器连接至永久性节点,并删除临时性节点。
进一步的,所述调度中心向所述任务执行器发送查询请求,还包括当所述调度中心存在所述任务执行器对应的所述临时性节点时,将所述任务执行器的状态标记为可用状态,包括:
所述调度中心查询标记为可用状态的任务执行器是否存在持久性节点,当存在对应任务执行器的永久性节点时,将所述任务执行器的状态标记为可用状态。
进一步的,所述调度中心下发任务,包括:将待执行任务下发至所述可用任务执行器。
一种分布式任务调度平台,包括:
调度中心、用户中心和包括多个任务执行器的任务执行器集群;
所述调度中心,用于接收所述任务执行器的信号;创建所述任务执行器对应的临时性节点;
所述调度中心包括分发调度中心,用于向所述调度中心发送查询请求,当所述调度中心存在所述任务执行器对应的所述临时性节点时,将所述任务执行器的状态标记为可用状态;所述分发调度中心接收任务,通过预设调度策略,将所述任务分配给各个可用任务执行器,得到各个所述可用任务执行器的待执行任务,并下发各个所述可用任务执行器的待执行任务,其中,可用任务执行器是状态被标记为可用状态的任务执行器;所述可用任务执行器,用于接收并执行所述待执行任务。
优选的,所述分布式任务调度平台的任务执行器集群,用于接收并执行待执行任务。
优选的,所述的分发调度中心,用于查询所述调度中心中的持久性节点,当所述持久性节点下存在所述任务执行器对应的所述临时性节点时,将所述任务执行器的状态标记为可用状态。
优选的,还包括日志数据库,所述的日志数据库用于任务执行过程的数据记录,所述调度中心可查看所述日志数据库的数据记录。
优选的,所述的日志数据库中包括日志分类器,用于将日志根据设定的规则进行日志分类。
本发明的有益效果是:本发明创建任务执行器对应的临时性节点以实现对任务执行器的注册,使得调度中心可以及时发现可用任务执行器,并将任务分配给可用任务执行器,可用任务执行器接收并执行待执行任务,能够提高任务执行速率。
附图说明
图1为一种分布式任务调度方法的流程示意图;
图2为一种分布式任务调度平台的原理示意图。
具体实施方式
下面结合附图进一步详细描述本发明的技术方案,但本发明的保护范围不局限于以下所述。
为了使本发明的目的,技术方案及优点更加清楚明白,结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明,即所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。需要说明的是,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
而且,术语“包括”,“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程,方法,物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程,方法,物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程,方法,物品或者设备中还存在另外的相同要素。
以下结合实施例对本发明的特征和性能作进一步的详细描述。
如图1所示,步骤一,任务执行器根据配置的调度中心的地址,自动注册到调度中心;
步骤二,判断是否达到任务触发条件,若达到任务触发条件,则调度中心下发任务;
步骤三,任务执行器执行调度中心下发的任务,并把执行结果放入内存队列中、把执行日志写入日志文件中;
步骤四,任务执行器的回调线程消费内存队列中的执行结果,将执行结果上报给调度中心;
步骤五,当用户在调度中心查看任务日志,根据任务日志中的任务执行器,调度中心请求对应的任务执行器,任务执行器读取任务日志文件并返回日志详情到调度中心,完成任务调度。
所述的任务执行器根据配置的调度中心的地址,自动注册到调度中心,包括如下过程:
调度中心接收任务执行器的信号;所述调度中心首先创建所述任务执行器对应的临时性节点;
调度中心向所述任务执行器发送查询请求,当所述任务执行器对应的临时性节点回应查询请求时,将所述任务执行器的状态标记为可用状态,并将临时性节点创建为永久性节点;
所述调度中心接收任务,通过预设调度策略,将所述任务分配给各个可用任务执行器,得到各个所述可用任务执行器的待执行任务,并下发各个所述可用任务执行器的待执行任务,其中,可用任务执行器是状态被标记为可用状态的任务执行器;所述可用任务执行器接收并执行任务。
所述将临时性节点创建为永久性节点包括:
调度中心在所述临时性节点处创建所述任务执行器对应的所述持久性节点,创建完成后,将任务执行器连接至永久性节点,并删除临时性节点。
所述调度中心向所述任务执行器发送查询请求,还包括当所述调度中心存在所述任务执行器对应的所述临时性节点时,将所述任务执行器的状态标记为可用状态,包括:
所述调度中心查询标记为可用状态的任务执行器是否存在持久性节点,当存在对应任务执行器的永久性节点时,将所述任务执行器的状态标记为可用状态。
所述调度中心下发任务,包括:将待执行任务下发至所述可用任务执行器。
如图2所示的一种分布式任务调度平台,包括:调度中心、用户中心和包括多个任务执行器的任务执行器集群;
所述调度中心,用于接收所述任务执行器的信号;创建所述任务执行器对应的临时性节点;
所述调度中心包括分发调度中心,用于向所述调度中心发送查询请求,当所述调度中心存在所述任务执行器对应的所述临时性节点时,将所述任务执行器的状态标记为可用状态;所述分发调度中心接收任务,通过预设调度策略,将所述任务分配给各个可用任务执行器,得到各个所述可用任务执行器的待执行任务,并下发各个所述可用任务执行器的待执行任务,其中,可用任务执行器是状态被标记为可用状态的任务执行器;所述可用任务执行器,用于接收并执行所述待执行任务。
所述分布式任务调度平台的任务执行器集群,用于接收并执行待执行任务。
所述的分发调度中心,用于查询所述调度中心中的持久性节点,当所述持久性节点下存在所述任务执行器对应的所述临时性节点时,将所述任务执行器的状态标记为可用状态。
还包括日志数据库,所述的日志数据库用于任务执行过程的数据记录,所述调度中心可查看所述日志数据库的数据记录。
所述的日志数据库中包括日志分类器,用于将日志根据设定的规则进行日志分类。
以上所述仅是本发明的优选实施方式,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。
Claims (10)
1.一种分布式任务调度方法,其特征在于,包括如下步骤:
步骤一,任务执行器根据配置的调度中心的地址,自动注册到调度中心;
步骤二,判断是否达到任务触发条件,若达到任务触发条件,则调度中心下发任务;
步骤三,任务执行器执行调度中心下发的任务,并把执行结果放入内存队列中、把执行日志写入日志文件中;
步骤四,任务执行器的回调线程消费内存队列中的执行结果,将执行结果上报给调度中心;
步骤五,当用户在调度中心查看任务日志,根据任务日志中的任务执行器,调度中心请求对应的任务执行器,任务执行器读取任务日志文件并返回日志详情到调度中心,完成任务调度。
2.根据权利要求1所述的一种分布式任务调度方法,其特征在于,所述的任务执行器根据配置的调度中心的地址,自动注册到调度中心,包括如下过程:
调度中心接收任务执行器的信号;所述调度中心首先创建所述任务执行器对应的临时性节点;
调度中心向所述任务执行器发送查询请求,当所述任务执行器对应的临时性节点回应查询请求时,将所述任务执行器的状态标记为可用状态,并将临时性节点创建为永久性节点;
所述调度中心接收任务,通过预设调度策略,将所述任务分配给各个可用任务执行器,得到各个所述可用任务执行器的待执行任务,并下发各个所述可用任务执行器的待执行任务,其中,可用任务执行器是状态被标记为可用状态的任务执行器;所述可用任务执行器接收并执行任务。
3.根据权利要求2所述的一种分布式任务调度方法,其特征在于,所述将临时性节点创建为永久性节点包括:
调度中心在所述临时性节点处创建所述任务执行器对应的永久性节点,创建完成后,将任务执行器连接至永久性节点,并删除临时性节点。
4.根据权利要求2所述的一种分布式任务调度方法,其特征在于,所述调度中心向所述任务执行器发送查询请求,还包括当所述调度中心存在所述任务执行器对应的所述临时性节点时,将所述任务执行器的状态标记为可用状态,包括:
所述调度中心查询标记为可用状态的任务执行器是否存在持久性节点,当存在对应任务执行器的永久性节点时,将所述任务执行器的状态标记为可用状态。
5.根据权利要求2所述的一种分布式任务调度方法,其特征在于,所述下发各个所述可用任务执行器的待执行任务,包括:将待执行任务下发至所述可用任务执行器。
6.一种分布式任务调度平台,其特征在于,包括:
调度中心、用户中心和包括多个任务执行器的任务执行器集群;
所述调度中心,用于接收所述任务执行器的信号;创建所述任务执行器对应的临时性节点;
所述调度中心包括分发调度中心,用于向所述调度中心发送查询请求,当所述调度中心存在所述任务执行器对应的所述临时性节点时,将所述任务执行器的状态标记为可用状态;所述分发调度中心接收任务,通过预设调度策略,将所述任务分配给各个可用任务执行器,得到各个所述可用任务执行器的待执行任务,并下发各个所述可用任务执行器的待执行任务,其中,可用任务执行器是状态被标记为可用状态的任务执行器;所述可用任务执行器,用于接收并执行所述待执行任务。
7.根据权利要求6所述的一种分布式任务调度平台,其特征在于,所述分布式任务调度平台的任务执行器集群,用于接收并执行待执行任务。
8.根据权利要求6所述的一种分布式任务调度平台,其特征在于,所述的分发调度中心,用于查询所述调度中心中的持久性节点,当所述持久性节点下存在所述任务执行器对应的所述临时性节点时,将所述任务执行器的状态标记为可用状态。
9.根据权利要求6所述的一种分布式任务调度平台,其特征在于,还包括日志数据库,所述的日志数据库用于任务执行过程的数据记录,所述调度中心可查看所述日志数据库的数据记录。
10.根据权利要求9所述的一种分布式任务调度平台,其特征在于,所述的日志数据库中包括日志分类器,用于将日志根据设定的规则进行日志分类。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210291569.2A CN114385341A (zh) | 2022-03-24 | 2022-03-24 | 一种分布式任务调度方法及调度平台 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210291569.2A CN114385341A (zh) | 2022-03-24 | 2022-03-24 | 一种分布式任务调度方法及调度平台 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114385341A true CN114385341A (zh) | 2022-04-22 |
Family
ID=81205454
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210291569.2A Pending CN114385341A (zh) | 2022-03-24 | 2022-03-24 | 一种分布式任务调度方法及调度平台 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114385341A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150312335A1 (en) * | 2014-04-28 | 2015-10-29 | Arizona Board Of Regents On Behalf Of Arizona State University | Peer-to-peer architecture for processing big data |
CN110661857A (zh) * | 2019-09-12 | 2020-01-07 | 京东数字科技控股有限公司 | 一种数据同步方法和装置 |
CN111324435A (zh) * | 2020-02-06 | 2020-06-23 | 北京奇艺世纪科技有限公司 | 分布式任务调度及注册方法、设备和分布式任务调度系统 |
CN112230987A (zh) * | 2020-10-29 | 2021-01-15 | 电信科学技术第五研究所有限公司 | 一种分布式模块化插件框架实现系统及方法 |
CN113467908A (zh) * | 2021-06-23 | 2021-10-01 | 深圳市蘑菇财富技术有限公司 | 任务执行方法、装置、计算机可读存储介质及终端设备 |
CN113934517A (zh) * | 2020-07-13 | 2022-01-14 | 浙江大搜车软件技术有限公司 | 定时任务调度方法、装置、电子装置和存储介质 |
-
2022
- 2022-03-24 CN CN202210291569.2A patent/CN114385341A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150312335A1 (en) * | 2014-04-28 | 2015-10-29 | Arizona Board Of Regents On Behalf Of Arizona State University | Peer-to-peer architecture for processing big data |
CN110661857A (zh) * | 2019-09-12 | 2020-01-07 | 京东数字科技控股有限公司 | 一种数据同步方法和装置 |
CN111324435A (zh) * | 2020-02-06 | 2020-06-23 | 北京奇艺世纪科技有限公司 | 分布式任务调度及注册方法、设备和分布式任务调度系统 |
CN113934517A (zh) * | 2020-07-13 | 2022-01-14 | 浙江大搜车软件技术有限公司 | 定时任务调度方法、装置、电子装置和存储介质 |
CN112230987A (zh) * | 2020-10-29 | 2021-01-15 | 电信科学技术第五研究所有限公司 | 一种分布式模块化插件框架实现系统及方法 |
CN113467908A (zh) * | 2021-06-23 | 2021-10-01 | 深圳市蘑菇财富技术有限公司 | 任务执行方法、装置、计算机可读存储介质及终端设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2721672B2 (ja) | データ処理を複数の制御位置にわたって分散させるための装置 | |
WO2020181813A1 (zh) | 一种基于数据处理的任务调度方法及相关设备 | |
US7346532B2 (en) | Workflow system | |
US8762993B2 (en) | Method, system and program product for capturing central processing unit (CPU) utilization for a virtual machine | |
CN111324435A (zh) | 分布式任务调度及注册方法、设备和分布式任务调度系统 | |
CN109471705A (zh) | 任务调度的方法、设备及系统、计算机设备 | |
CN110493065A (zh) | 一种云中心运维的告警关联度分析方法及系统 | |
CN101834750A (zh) | 一种通用业务监控方法 | |
EP2021948A2 (en) | Work item event procession | |
CN108268546A (zh) | 一种优化数据库的方法及装置 | |
CN112631805A (zh) | 数据处理方法、装置、终端设备及存储介质 | |
CN107168777A (zh) | 分布式系统中资源的调度方法以及装置 | |
CN106462459A (zh) | 为分布式处理系统管理元数据 | |
CN110442454B (zh) | 一种资源调度方法、装置及计算机设备 | |
AU1207995A (en) | A method and device for extracting data from a group of data | |
CN109286617B (zh) | 一种数据处理方法及相关设备 | |
CN116777182A (zh) | 半导体晶圆制造执行任务派工方法 | |
CN114385341A (zh) | 一种分布式任务调度方法及调度平台 | |
CN104636211A (zh) | 一种软件系统间的信息交互方法及中间件系统 | |
CN111600771B (zh) | 网络资源探测系统、方法 | |
CN109032812A (zh) | 一种移动终端及其进程间通信的限制方法、存储介质 | |
CN115048225B (zh) | 一种基于分布式存储的分布式调度方法 | |
CN112000657A (zh) | 数据管理方法、装置、服务器及存储介质 | |
CN114020420A (zh) | 一种分布式待执行任务执行方法及系统、存储介质、终端 | |
CN113110935A (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: 20220422 |
|
RJ01 | Rejection of invention patent application after publication |