CN112286664A - 任务调度方法、装置、计算机设备及可读存储介质 - Google Patents
任务调度方法、装置、计算机设备及可读存储介质 Download PDFInfo
- Publication number
- CN112286664A CN112286664A CN202011195248.XA CN202011195248A CN112286664A CN 112286664 A CN112286664 A CN 112286664A CN 202011195248 A CN202011195248 A CN 202011195248A CN 112286664 A CN112286664 A CN 112286664A
- Authority
- CN
- China
- Prior art keywords
- task
- scheduling
- state
- service node
- running state
- 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
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3051—Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Quality & Reliability (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了任务调度方法、装置、计算机设备及可读存储介质,涉及计算机技术领域,包括获取任务信息,所述任务信息包括至少一个服务节点的调度任务;同步所述任务信息中的所述调度任务;监测所述服务节点中所述调度任务的运行状态;获取与所述调度任务关联的关联任务及依赖关系;根据所述依赖关系控制服务节点的所述关联任务的运行状态和所述调度任务的运行状态,解决了现有的各个不同的数据处理工具之间的任务调度不能关联,人工处理流程复杂且不利于后续维护的问题。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种任务调度方法、装置、计算机设备及可读存储介质。
背景技术
随着科技的发展和互联网应用的增加,应用于网络的数据很多,为了有效的对数据进行运算和存储,大多采用数据处理的工具,包括传统关系型数据库,、大数据、还有一些其他的非关系型数据库,但是前述这些不同种类的数据库处理数据时,需要依赖各自的调度任务,比如,hadoop任务和datastage任务是通过不同的工具在不同的工作平台进行调度。
现有的各个不同的数据处理工具之间的任务调度不能关联,只能通过各自自定义检测工具或者批次数据检测来识别各个调度任务之间的数据依赖,尤其是比较大型的项目,使用多个不同数据处理工具,需要人工沟通协作,增加了整体流程的复杂性,不利于后续的项目维护、调优。
发明内容
本发明的目的是提供一种任务调度方法、装置、计算机设备及可读存储介质,用于解决现有的各个不同的数据处理工具之间的任务调度不能关联,人工处理流程复杂且不利于后续维护的问题。
为实现上述目的,本发明提供一种任务调度方法,包括:
获取任务信息,所述任务信息包括至少一个服务节点的调度任务;
同步所述任务信息中的所述调度任务;
监测所述服务节点中所述调度任务的运行状态;
获取与所述调度任务关联的关联任务及依赖关系;
根据所述依赖关系控制服务节点的所述关联任务的运行状态和所述调度任务的运行状态;
其中,所述依赖关系包括直接制约关系和间接制约关系;所述运行状态包括未运行状态、开始运行状态以及结束运行状态。
进一步的,所述监测所述服务节点中所述调度任务的运行状态,包括以下:
获取所述服务节点的工作状态,所述工作状态包括空闲状态和忙碌状态;
判断所述服务节点的负载状态是否为空闲状态;
若是,获取与所述进服务器节点中所述调度任务关联的关联任务并建立依赖关系;
若否,将所述调度任务存于一等待队列中。
进一步的,获取与所述调度任务关联的关联任务并建立依赖关系,包括以下:
根据所述调度任务携带的关联标识,查询关联任务集合,以获取与所述调度任务关联的所述关联任务;
根据所述关联标识的状态信息,确认所述调度任务与所述关联任务的依赖关系。
进一步的,根据所述关联标识的状态信息,确认所述调度任务与所述关联任务的依赖关系,包括:
所述状态信息为任务优先级;
当所述关联标识的任务优先级高于预设任务时,所述调度任务与所述关联任务之间的依赖关系为直接制约关系;
当所述关联标识的任务优先级低于预设任务时,所述调度任务与所述关联任务之间的依赖关系为间接制约关系。
进一步的,当所述依赖关系为直接制约关系,根据所述依赖关系控制服务节点的所述关联任务的运行状态和所述调度任务的运行状态,包括以下:
建立第一执行表单,所述第一执行表单包括具有直接制约关系的调度任务和关联任务,每一所述调度任务或所述关联任务均关联用于标识执行顺序的优先级标签和执行周期;
基于所述第一执行表单依次控制服务节点中所述调度任务的运行状态和所述关联任务的运行状态。
进一步的,当当所述依赖关系为间接制约关系,根据所述依赖关系控制服务节点的所述关联任务的运行状态和所述调度任务的运行状态,包括以下:
建立第二执行表单,所述第二执行表单包括具有间接制约关系的调度任务和关联任务,每一所述调度任务或所述关联任务关联用于标识执行顺序的优先级标签和执行周期;
基于所述第二执行表单依次控制服务节点中所述调度任务的运行状态和所述关联任务的运行状态。
进一步的,所述控制服务节点的所述关联任务的运行状态和所述调度任务的运行状态,包括以下:
采用API调用控制所述调度任务或所述关联任务处于开始运行状态;
和/或,控制所述调度任务或所述关联任务处于结束运行状态。
为实现上述目的,本发明还提供一种任务调度装置,包括:
获取模块,用于获取任务信息,所述任务信息包括至少一个服务节点的调度任务;
同步模块,用于同步所述任务信息中的所述调度任务;
监测模块,用于监测所述服务节点中所述调度任务的运行状态;
关联模块,用于获取与所述调度任务关联的关联任务,并建立依赖关系;
控制模块,用于根据所述依赖关系控制服务节点的所述关联任务的运行状态和所述调度任务的运行状态;
其中,所述依赖关系包括直接制约关系和间接制约关系;所述运行状态包括未运行状态、开始运行状态以及结束运行状态。
为实现上述目的,本发明还提供一种计算机设备,所述计算机设备包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任务调度方法的步骤。
为实现上述目的,本发明还提供一种计算机可读存储介质,其包括多个存储介质,各存储介质上存储有计算机程序,所述多个存储介质存储的所述计算机程序被处理器执行时共同实现上述任务调度方法的步骤。
本发明提供的任务调度方法、装置、计算机设备及可读存储介质,通过获取各个服务节点的调度任务,对所述调度任务进行同步和实时监测,而后获取各个调度任务之间的依赖关系以及关联任务,并根据依赖关系对各个调度任务或关联任务进行运行状态的控制,通过上述方式实现对调度任务和关联任务的自动控制,解决了现有的各个不同的数据处理工具之间的任务调度不能关联,人工处理流程复杂且不利于后续维护的问题。
附图说明
图1为本发明所述任务调度方法实施例一的流程图;
图2为本发明所述任务调度方法实施例一中根据所述依赖关系控制服务节点的所述关联任务的运行状态和所述调度任务的运行状态的流程图;
图3为本发明所述任务调度方法实施例一中获取与所述调度任务关联的关联任务并建立依赖关系态的流程图;
图4为本发明所述任务调度方法实施例一中根据所述关联标识的状态信息,确认所述调度任务与所述关联任务的依赖关系的流程图;
图5为本发明所述任务调度装置实施例二的程序模块示意图;
图6为本发明计算机设备实施例三中计算机设备的硬件结构示意图。
附图标记:
6、任务调度装置 61、获取模块 62、同步模块
63、监测模块 64、关联模块 65、控制模块
651、第一控制单元 652、第二控制单元
7、计算机设备 71、存储器 72、处理器 73、网络接口
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
本发明提供的任务调度方法、装置、计算机设备及可读存储介质,适用于计算机应用领域,为提供一种基于获取模块、同步模块、监测模块、关联模块、控制模块的任务调度方法。本发明通过获取模块获取各个服务节点的调度任务,采用同步模块和监测模块对所述任务信息中的调度任务进行同步和实时监测,而后采用关联模块获取各个调度任务之间的依赖关系以及关联任务,最后采用控制模块根据依赖关系对各个调度任务或关联任务进行运行状态的控制,通过上述方式对各个调度任务和关联任务进行自动控制,减少人工操作过程的复杂性,实现数据处理流程连接性。
实施例一
请参阅图1,本实施例的一种任务调度方法,应用于服务器端,作为调度平台,用于对多个不同数据库服务节点中的任务执行状态进行控制,包括以下步骤:
S10:获取任务信息,所述任务信息包括至少一个服务节点的调度任务;
在本实施方式中,所述服务节点为提供不同数据库的节点服务器,本方案中主要是通过不同数据库的任务信息统一到同一服务器端上进行运行,所述调度任务包括基于不同平台实现的大数据调用任务,包括但不限于hadoop任务、datastage任务、kettle任务等。需要说明的是,hadoop是一个大数据框架,实现分布式数据处理系统,Hadoop解决了数据存储问题(HDFS分布式文件系统)和分布式计算问题(MapRe-duce),对于Hadoop任务,hadoop平台内需要设置其中某一节点服务器为主服务节点,用于启动hadoop任务并将hadoop的任务信息反馈给作为调度平台的服务器端。
需要特别说明的是,本方案中,调度平台是用来提供控制这个任务的运行、停止、状态监控。任务实际上还是在原有的平台上进行运行的,比如hadoop任务还是运行在hadoop平台,datastage任务还是运行在节点服务器中,通过该任务调度方法实现对各个任务运行或停止的控制。
S20:同步所述任务信息中的所述调度任务;
在本实施方式中,任务同步是指一个任务需要等待另一个任务或中断服务程序发送相应的同步信号后才能继续执行,同步所述调度任务通过预先设置任务之间的关联关系来实现,以便于后续控制调度任务和关联任务的运行状态。
S30:监测所述服务节点中所述调度任务的运行状态;
其中,所述运行状态包括未运行状态、开始运行状态以及结束运行状态。
具体的,所述监测所述服务节点中所述调度任务的运行状态,参阅图2,包括以下:
S31:获取所述服务节点的工作状态,所述工作状态包括空闲状态和忙碌状态;
S32:判断所述服务节点的负载状态是否为空闲状态;
具体的,根据服务节点的工作状态进行后续步骤S33和S34的操作,由于任务还是在各个服务节点上执行,上述操作可以减少对服务节点性能的占用,进一步确保各服务节点的任务执行。
S33:若是,获取与所述进服务器节点中所述调度任务关联的关联任务并建立依赖关系;
S34:若否,将所述调度任务存于一等待队列中,根据预设时间间隔获取所述服务节点的工作状态,直至服务节点的负载状态为空闲状态,执行步骤S33。
在本实施方式中,采用监测模块实时监测调度任务的运行状态,通过实时监测用于实现对各个调度任务的统一管理和维护。作为举例的,采用cronmon对定时任务进行监控,cronmon是一个计划任务(定时任务)监控系统,可以对循环执行的程序和脚本进行监控告警,同时可以将监控任务划分到不同业务下面,建立业务、通知人和监控任务的多层级关系;采用celery实现任务状态监控,celery是python里常用的一个异步任务队列,可以用于监控一些任务或者定时任务的运行状态;还可以通过以一定的间隔发送HTTPS请求到特定的URL实现监控。
S40:获取与所述调度任务关联的关联任务并建立依赖关系;
其中,所述依赖关系包括直接制约关系和间接制约关系;
具体的,所述获取与所述调度任务关联的关联任务并建立依赖关系,参阅图3,包括以下:
S41:根据所述调度任务携带的关联标识,查询关联任务集合,以获取与所述调度任务关联的所述关联任务;
具体的,每一调度任务均可关联多个关联任务,具备唯一关联标识。
S42:根据所述关联标识的状态信息,确认所述调度任务与所述关联任务的依赖关系。
所述状态信息为任务优先级。更具体的,所述根据所述关联标识的状态信息,确认所述调度任务与所述关联任务的依赖关系,参阅图4,包括:
S42-1:判断所述关联标识的任务优先级是否高于预设任务;
具体的,所述预设任务用于判断调度任务或关联任务之间的依赖关系。
S42-2:当所述关联标识的任务优先级高于预设任务时,所述调度任务与所述关联任务之间的依赖关系为直接制约关系;
具体的,所述直接制约关系源于任务间的合作;作为举例而非限定的,比如a任务依赖于b任务,那么针对b任务整体设置一个当前的运行状态(未运行、开始运行、结束运行),当a任务到达运行时间的时候,通过识别b任务的状态是否是已完成进而控制a任务是否进行运行;
S42-3:当所述关联标识的任务优先级低于预设任务时,所述调度任务与所述关联任务之间的依赖关系为间接制约关系。
所述间接制约关系源于对资源的共享;作为举例而非限定的,a、c任务依赖于b任务,那么针对b任务整体设置一个运行状态(未运行、开始运行、结束运行),针对c任务整体设置一个运行状态(未运行、开始运行、结束运行),当a任务到达运行时间的时候,通过识别b任务和c任务的状态是否是已完成进而控制a任务是否进行运行。
S50:根据所述依赖关系控制服务节点的所述关联任务的运行状态和所述调度任务的运行状态。
参阅图2,当所述依赖关系为直接制约关系,则上述步骤S50中所述根据所述依赖关系控制服务节点的所述关联任务的运行状态和所述调度任务的运行状态,包括以下步骤:
S51:根据所述直接制约关系中的执行顺序依次控制服务节点中所述调度任务的运行状态和所述关联任务的运行状态。
在本实施方式中,所述直接制约关系中的执行顺序例如:a任务依赖于b任务的完成,则b任务执行顺序优先于a任务。
具体的,上述根据直接制约关系依次控制服务节点中所述调度任务的运行状态和所述关联任务的运行状态,包括以下步骤:
S51-1:建立第一执行表单,所述第一执行表单包括具有直接制约关系的调度任务和关联任务,每一所述调度任务或所述关联任务均关联用于标识执行顺序的优先级标签和执行周期;
在本实施方式中,针对不同的任务,会有不同的调度频率,所以本方案中针对不同的任务,做了两层维度的依赖关系,包括任务状态维度和任务周期维度,作为举例而非限定的,比如a任务,a任务假如是每天运行一次,每天的一次就是其中一个周期的维度,设b任务依赖于a任务,则对a任务预先整体设置一个运行状态,即在该周期内任务是否完成,不同的任务可以设置整体任务的依赖关系,也可以设置当前周期的依赖关系。
S51-2:基于所述第一执行表单依次控制服务节点中所述调度任务的运行状态和所述关联任务的运行状态。
具体的,在上述方案中,所述执行顺序的优先级标签可以根据执行周期进行调整,根据所述执行周期判断该任务是否处于当前周期内的未运行状态,若是,则提高该任务的优先级。
当所述依赖关系为所述间接制约关系时,则上述步骤S50中所述根据所述依赖关系控制服务节点的所述关联任务的运行状态和所述调度任务的运行状态,包括以下:
S52:根据所述间接制约关系中的互斥顺序控制服务节点的所述调度任务的运行状态和所述关联任务的运行状态。
在本实施方式中,所述互斥顺序根据各个调度任务或关联任务处理时间以及依赖资源的使用情况获得。
具体的,根据所述间接制约关系中的互斥顺序控制服务节点的所述调度任务的运行状态和所述关联任务的运行状态,包括以下:
S52-1:建立第二执行表单,所述第二执行表单包括具有间接制约关系的调度任务和关联任务,每一所述调度任务或所述关联任务关联用于标识执行顺序的优先级标签和执行周期;
在本实施方式中,所述具有间接制约关系的调度任务和关联任务,作为举例的,数据量大保单信息处理的任务通常是使用大数据平台或hadoop平台处理的,处理后的数据使用是oracle数据库处理的用来进行前端展示、投保、理赔、支付等操作,此时大数据任务和hadoop任务则属于间接制约关系的任务,大数据任务或hadoop任务与oracle任务之间则属于如上所述直接制约关系的任务。
S52-2:基于所述第二执行表单依次控制服务节点中所述调度任务的运行状态和所述关联任务的运行状态。
所述控制服务节点的所述关联任务的运行状态和所述调度任务的运行状态,包括以下步骤:
采用API调用控制所述调度任务或所述关联任务处于开始运行状态;和/或,控制所述调度任务或所述关联任务处于结束运行状态。
具体的,作为补充说明的,对于datastage、kettle任务,可直接通过API调用对应的datastage、kettle工具即可,对于hadoop任务,则通过API调用信发送至上述步骤S1中所述hadoop平台中主服务器即可。
在上述实施方式中,需要特别说明的是,各个调度任务或关联任务是在原有的平台上进行运行的,本方案中所述任务调度方式是提供一任务调度平台,用于对上述调度任务或关联任务进行控制运行或停止。
上述第一执行表单和第二执行表单可上传至区块链以便于后续作为参考样本或训练样本,上传至区块链可保证其安全性和对用户的公正透明性,用户设备可以从区块链中下载得该摘要信息,以便查证优先级列表是否被篡改,后续也可以从区块链中下载获得对应金额数据的语音文件用于语音播报,无需生成过程,有效提高语音处理效率。
本申请所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
本申请所述任务调度处理过程,获取各个服务节点的调度任务合并的任务信息,对所述任务信息中的调度任务进行同步和实时监测,并获取各个调度任务之间的依赖关系以及关联任务,根据依赖关系对各个调度任务或关联任务进行运行状态的控制,解决了现有的各个不同的数据处理工具之间的任务调度不能关联,只能通过各自自定义检测工具或者批次数据检测来识别各个调度任务之间的数据依赖的问题,通过上述方式建立一个任务调度平台,对各个调度任务和关联任务进行自动控制,减少人工操作过程的复杂性,上述任务调度方法能够实现不同系统、不同平台的任务放到统一的平台上运行,实现不同的数据交互更为高效快捷、开发维护方便,更进一步,作为举例的,本方案的任务调度方法具体可用于保单信息处理、账户信息维护等场景中。
实施例二:
请参阅图5,本实施例的一种任务调度装置6,包括:获取模块61、同步模块62、监测模块63、关联模块64以及控制模块65。
获取模块61,用于获取任务信息,所述任务信息包括至少一个服务节点的调度任务;
同步模块62,用于同步所述任务信息中的所述调度任务;
监测模块63,用于监测所述服务节点中所述调度任务的运行状态;
其中,所述运行状态包括未运行状态、开始运行状态以及结束运行状态;
关联模块64,用于获取与所述调度任务关联的关联任务并建立依赖关系;
其中,所述依赖关系包括直接制约关系和间接制约关系;
控制模块65,用于根据所述依赖关系控制服务节点的所述关联任务的运行状态和所述调度任务的运行状态。
具体的,本方案中针对不同的任务(包括调度任务和节点任务),每一任务对应的依赖关系均包括任务状态维度和任务周期维度。
优选的,所述控制模块65还包括以下:
第一控制单元651,用于当所述依赖关系为直接制约关系,根据所述依赖关系控制服务节点的所述关联任务的运行状态和所述调度任务的运行状态;
第二控制单元652,用于当所述依赖关系为所述间接制约关系时,根据所述依赖关系控制服务节点的所述关联任务的运行状态和所述调度任务的运行状态。
本技术方案基于运维中过程优化,通过获取模块获取各个服务节点的调度任务合并的任务信息,采用同步模块和监测模块对所述任务信息中的调度任务进行同步和实时监测,而后采用关联模块获取各个调度任务之间的依赖关系以及关联任务,控制模块根据依赖关系对各个调度任务或关联任务进行运行状态的控制,比如开始运行或停止运行,通过上述方式建立一个任务调度平台,对各个调度任务和关联任务进行自动控制,减少人工操作过程的复杂性,实现不同平台的调度任务能够相互依赖,在统一的调度平台内部实现数据处理流程连接性。
本技术方案中还通过第一控制单元,用于当所述依赖关系为直接制约关系,控制服务节点中所述调度任务的运行状态和所述关联任务的运行状态以及第二控制单元,用于当所述依赖关系为间接制约关系,控制服务节点中所述调度任务的运行状态和所述关联任务的运行状态,通过对不同依赖关系分别处理提高对各个调度任务和关联任务自动控制的准确度,同时第一控制单元和第二控制单元考虑任务状态维度和任务周期维度进行控制,实现不同系统在统一的平台上进行数据开发、系统交互,将不同调度周期的任务实现相互协作、相互依赖。
实施例三:
为实现上述目的,本发明还提供一种计算机设备7,该计算机设备可包括多个计算机设备,实施例二的任务调度装置1的组成部分可分散于不同的计算机设备7中,计算机设备7可以是执行程序的智能手机、平板电脑、笔记本电脑、台式计算机、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。本实施例的计算机设备至少包括但不限于:可通过系统总线相互通信连接的存储器71、处理器72、网络接口73以及任务调度装置6,如图6所示。需要指出的是,图4仅示出了具有组件-的计算机设备,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
本实施例中,存储器71至少包括一种类型的计算机可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器51可以是计算机设备的内部存储单元,例如该计算机设备的硬盘或内存。在另一些实施例中,存储器71也可以是计算机设备的外部存储设备,例如该计算机设备上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,存储器51还可以既包括计算机设备的内部存储单元也包括其外部存储设备。本实施例中,存储器51通常用于存储安装于计算机设备的操作系统和各类应用软件,例如实施例一的任务调度装置6的程序代码等。此外,存储器71还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器52在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器52通常用于控制计算机设备的总体操作。本实施例中,处理器72用于运行存储器71中存储的程序代码或者处理数据,例如运行任务调度装置,以实现实施例一的任务调度方法。
所述网络接口73可包括无线网络接口或有线网络接口,该网络接口73通常用于在所述计算机设备7与其他计算机设备7之间建立通信连接。例如,所述网络接口73用于通过网络将所述计算机设备7与外部终端相连,在所述计算机设备7与外部终端之间的建立数据传输通道和通信连接等。所述网络可以是企业内部网(Intranet)、互联网(Internet)、全球移动通讯系统(Global System of Mobile communication,GSM)、宽带码分多址(WidebandCode Division Multiple Access,WCDMA)、4G网络、5G网络、蓝牙(Bluetooth)、Wi-Fi等无线或有线网络。
需要指出的是,图4仅示出了具有部件71-73的计算机设备7,但是应理解的是,并不要求实施所有示出的部件,可以替代的实施更多或者更少的部件。
在本实施例中,存储于存储器71中的所述任务调度装置6还可以被分割为一个或者多个程序模块,所述一个或者多个程序模块被存储于存储器71中,并由一个或多个处理器(本实施例为处理器72)所执行,以完成本发明。
实施例四:
为实现上述目的,本发明还提供一种计算机可读存储介质,其包括多个存储介质,如闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘、服务器、App应用商城等等,其上存储有计算机程序,程序被处理器72执行时实现相应功能。本实施例的计算机可读存储介质用于存储任务调度装置,被处理器72执行时实现实施例一的任务调度方法。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种任务调度方法,其特征在于,包括以下:
获取任务信息,所述任务信息包括至少一个服务节点的调度任务;
同步所述任务信息中的所述调度任务;
监测所述服务节点中所述调度任务的运行状态;
获取与所述调度任务关联的关联任务并建立依赖关系;
根据所述依赖关系控制服务节点的所述关联任务的运行状态和所述调度任务的运行状态;
其中,所述依赖关系包括直接制约关系和间接制约关系;所述运行状态包括未运行状态、开始运行状态以及结束运行状态。
2.根据权利要求1所述的任务调度方法,其特征在于:所述监测所述服务节点中所述调度任务的运行状态,包括以下:
获取所述服务节点的工作状态,所述工作状态包括空闲状态和忙碌状态;
判断所述服务节点的负载状态是否为空闲状态;
若是,获取与所述进服务器节点中所述调度任务关联的关联任务并建立依赖关系;
若否,将所述调度任务存于一等待队列中。
3.根据权利要求2所述的任务调度方法,其特征在于,获取与所述调度任务关联的关联任务并建立依赖关系,包括以下:
根据所述调度任务携带的关联标识,查询关联任务集合,以
获取与所述调度任务关联的所述关联任务;
根据所述关联标识的状态信息,确认所述调度任务与所述关联任务的依赖关系。
4.根据权利要求3所述的任务调度方法,其特征在于,根据所述关联标识的状态信息,确认所述调度任务与所述关联任务的依赖关系,包括:
所述状态信息为任务优先级;
当所述关联标识的任务优先级高于预设任务时,所述调度任务与所述关联任务之间的依赖关系为直接制约关系;
当所述关联标识的任务优先级低于预设任务时,所述调度任务与所述关联任务之间的依赖关系为间接制约关系。
5.根据权利要求1所述的任务调度方法,其特征在于,当所述依赖关系为直接制约关系,根据所述依赖关系控制服务节点的所述关联任务的运行状态和所述调度任务的运行状态,包括以下:
建立第一执行表单,所述第一执行表单包括具有直接制约关系的调度任务和关联任务,每一所述调度任务或所述关联任务均关联用于标识执行顺序的优先级标签和执行周期;
基于所述第一执行表单依次控制服务节点中所述调度任务的运行状态和所述关联任务的运行状态。
6.根据权利要求1所述的任务调度方法,其特征在于,当所述依赖关系为间接制约关系,根据所述依赖关系控制服务节点的所述关联任务的运行状态和所述调度任务的运行状态,包括以下:
建立第二执行表单,所述第二执行表单包括具有间接制约关系的调度任务和关联任务,每一所述调度任务或所述关联任务关联用于标识执行顺序的优先级标签和执行周期;
基于所述第二执行表单依次控制服务节点中所述调度任务的运行状态和所述关联任务的运行状态。
7.根据权利要求1所述的任务调度方法,其特征在于,所述控制服务节点的所述关联任务的运行状态和所述调度任务的运行状态,包括以下:
采用API调用控制所述调度任务或所述关联任务处于开始运行状态;
和/或,控制所述调度任务或所述关联任务处于结束运行状态。
8.一种任务调度装置,其特征在于,包括:
获取模块,用于获取任务信息,所述任务信息包括至少一个服务节点的调度任务;
同步模块,用于同步所述任务信息中的所述调度任务;
监测模块,用于监测所述服务节点中所述调度任务的运行状态;
关联模块,用于获取与所述调度任务关联的关联任务并建立依赖关系;
控制模块,用于根据所述依赖关系控制服务节点的所述关联任务的运行状态和所述调度任务的运行状态;
其中,所述依赖关系包括直接制约关系和间接制约关系;所述运行状态包括未运行状态、开始运行状态以及结束运行状态。
9.一种计算机设备,其特征在于,所述计算机设备包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现权利要求1至7任一项所述任务调度方法的步骤。
10.一种计算机可读存储介质,其包括多个存储介质,各存储介质上存储有计算机程序,其特征在于,所述多个存储介质存储的所述计算机程序被处理器执行时共同实现权利要求1至7任一项所述任务调度方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011195248.XA CN112286664A (zh) | 2020-10-30 | 2020-10-30 | 任务调度方法、装置、计算机设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011195248.XA CN112286664A (zh) | 2020-10-30 | 2020-10-30 | 任务调度方法、装置、计算机设备及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112286664A true CN112286664A (zh) | 2021-01-29 |
Family
ID=74353887
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011195248.XA Pending CN112286664A (zh) | 2020-10-30 | 2020-10-30 | 任务调度方法、装置、计算机设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112286664A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112995306A (zh) * | 2021-02-05 | 2021-06-18 | 建信金融科技有限责任公司 | 一种基于storm的实时账务信息处理方法及系统 |
CN113342490A (zh) * | 2021-05-31 | 2021-09-03 | 北京顶象技术有限公司 | 一种建模任务调度的执行方法和装置 |
CN113946627A (zh) * | 2021-10-27 | 2022-01-18 | 北京科杰科技有限公司 | 数据实时同步场景下的数据准确性检测预警系统及方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104657212A (zh) * | 2015-02-13 | 2015-05-27 | 北京亚信数据有限公司 | 一种任务调度的方法及系统 |
CN109788043A (zh) * | 2018-12-28 | 2019-05-21 | 亚信科技(中国)有限公司 | 任务处理方法、装置、计算机设备和存储介质 |
CN110532084A (zh) * | 2019-09-04 | 2019-12-03 | 深圳前海微众银行股份有限公司 | 平台任务的调度方法、装置、设备及存储介质 |
CN110704173A (zh) * | 2019-09-29 | 2020-01-17 | 深圳前海环融联易信息科技服务有限公司 | 任务调度方法、调度系统、电子设备及计算机存储介质 |
CN111125444A (zh) * | 2019-12-10 | 2020-05-08 | 中国平安财产保险股份有限公司 | 大数据任务调度管理方法、装置、设备及存储介质 |
-
2020
- 2020-10-30 CN CN202011195248.XA patent/CN112286664A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104657212A (zh) * | 2015-02-13 | 2015-05-27 | 北京亚信数据有限公司 | 一种任务调度的方法及系统 |
CN109788043A (zh) * | 2018-12-28 | 2019-05-21 | 亚信科技(中国)有限公司 | 任务处理方法、装置、计算机设备和存储介质 |
CN110532084A (zh) * | 2019-09-04 | 2019-12-03 | 深圳前海微众银行股份有限公司 | 平台任务的调度方法、装置、设备及存储介质 |
CN110704173A (zh) * | 2019-09-29 | 2020-01-17 | 深圳前海环融联易信息科技服务有限公司 | 任务调度方法、调度系统、电子设备及计算机存储介质 |
CN111125444A (zh) * | 2019-12-10 | 2020-05-08 | 中国平安财产保险股份有限公司 | 大数据任务调度管理方法、装置、设备及存储介质 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112995306A (zh) * | 2021-02-05 | 2021-06-18 | 建信金融科技有限责任公司 | 一种基于storm的实时账务信息处理方法及系统 |
CN112995306B (zh) * | 2021-02-05 | 2023-10-20 | 建信金融科技有限责任公司 | 一种基于storm的实时账务信息处理方法及系统 |
CN113342490A (zh) * | 2021-05-31 | 2021-09-03 | 北京顶象技术有限公司 | 一种建模任务调度的执行方法和装置 |
CN113946627A (zh) * | 2021-10-27 | 2022-01-18 | 北京科杰科技有限公司 | 数据实时同步场景下的数据准确性检测预警系统及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11061925B2 (en) | Multi-task scheduling method and system, application server and computer-readable storage medium | |
CN112286664A (zh) | 任务调度方法、装置、计算机设备及可读存储介质 | |
CN109558234B (zh) | 一种定时任务调度方法和装置 | |
TWI751402B (zh) | 一種資料同步方法、分散式系統、電腦可讀取儲取媒體、電腦設備及分散式設備 | |
CN108874558B (zh) | 分布式事务的消息订阅方法、电子装置及可读存储介质 | |
CN110427252B (zh) | 基于任务依赖关系的任务调度方法、装置及存储介质 | |
CN107689982B (zh) | 多数据源数据同步方法、应用服务器及计算机可读存储介质 | |
CN111897633A (zh) | 一种任务处理的方法和装置 | |
CN105677465B (zh) | 应用于银行跑批处理的数据处理方法及装置 | |
WO2020248375A1 (zh) | 数据库间数据同步方法、系统、计算机设备及存储介质 | |
CN101387953A (zh) | 协同软件开发系统及方法 | |
CN111666145A (zh) | 消息队列的消息处理方法、系统和计算机设备 | |
CN110677453A (zh) | 基于ZooKeeper的分布式锁服务实现方法、装置、设备及存储介质 | |
CN111580948A (zh) | 任务调度方法、装置及计算机设备 | |
CN110333916B (zh) | 请求消息处理方法、装置、计算机系统及可读存储介质 | |
CN113515369B (zh) | 一种数据处理方法、系统、终端和存储介质 | |
CN112600842A (zh) | 集群shell方法、装置、电子设备及计算机可读存储介质 | |
CN111767126A (zh) | 分布式批量处理的系统和方法 | |
CN116150273A (zh) | 数据处理方法、装置、计算机设备及存储介质 | |
CN112667393B (zh) | 分布式任务计算调度框架搭建的方法、装置及计算机设备 | |
CN111679899B (zh) | 任务调度方法、装置、平台设备及存储介质 | |
CN111431951B (zh) | 一种数据处理方法、节点设备、系统及存储介质 | |
CN112559155A (zh) | 批量作业处理方法、系统、计算机设备及可读存储介质 | |
CN115002218B (zh) | 流量分发方法、装置、计算机设备及存储介质 | |
US20210224272A1 (en) | Method, device, computer apparatus, and storage medium for storing data |
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 |