CN113760513A - 一种分布式任务调度方法、装置、设备和介质 - Google Patents
一种分布式任务调度方法、装置、设备和介质 Download PDFInfo
- Publication number
- CN113760513A CN113760513A CN202111088685.6A CN202111088685A CN113760513A CN 113760513 A CN113760513 A CN 113760513A CN 202111088685 A CN202111088685 A CN 202111088685A CN 113760513 A CN113760513 A CN 113760513A
- Authority
- CN
- China
- Prior art keywords
- task
- service
- scheduling
- party
- tasks
- 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/5083—Techniques for rebalancing the load in a distributed system
-
- 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/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
Abstract
本发明提出一种分布式任务调度方法、装置、设备和介质,涉及人工智能技术领域,该方法包括:一种分布式任务调度方法,包括:调度方根据任务注册请求从业务发起方获取对应的任务参数,完成任务创建,并根据所述业务参数匹配预设业务类型,并将注册任务录入匹配业务类型对应的任务分片中,完成注册任务分片;根据任务的执行时间从各任务分片中获取待执行任务,生成任务链表数组以及对应的任务执行线程;按设定时间间隔从所述任务链表数组中获取任务,根据各调度方心跳监测结果,将任务输出至可用调度方,由所述可用调度方输出任务中的业务消息至业务处理方;本发明可增强调度方的可扩展能力,同时引入集群容错机制,增强任务调度的鲁棒性。
Description
技术领域
本发明涉及人工智能技术领域,尤其涉及一种分布式任务调度方法、装置、设备和介质。
背景技术
任务调度系统是指基于给定时间点、给定时间间隔、给定执行次数自动执行任务的系统。随着公司业务的扩大,各业务线执行任务愈来愈多,统一的任务调度成为了必然。现存的任务调度方式主要有:
1.基于线程等待机制(timer、scheduleExecutor)定时执行。
最原始的任务调度方式,需要业务开发自行实现延时,且不支持分布式部署。
2.spring任务调度。
spring作为成熟的开源ioc架构在企业应用中广受欢迎,其自带的任务调度功能通过注册bean的方式注入scheduler,使定时任务开发变得极其简单。调度器与任务高度耦合,不支持失效转移。同一任务可同时在多节点执行。
3.quartz任务调度。
开源的任务调度系统。可以满足更多复杂场景的任务调度,通过在数据库中配置定时器信息,以数据库悲观锁的方式达到同一个任务始终只有一个节点在执行。但是数据库悲观锁的竞争会严重降低性能。解决了集群高可用的问题,并没有解决任务分片的问题,不能实现水平扩展。
发明内容
鉴于以上现有技术存在的问题,本发明提出一种分布式任务调度方法、装置、设备和介质,主要解决现有方法调度器与任务高度耦合,不支持失效转移,且不利于水平扩展的问题。
为了实现上述目的及其他目的,本发明采用的技术方案如下。
一种分布式任务调度方法,包括:
调度方根据任务注册请求从业务发起方获取对应的任务参数,完成任务创建,并根据所述业务参数匹配预设业务类型,并将注册任务录入匹配业务类型对应的任务分片中,完成注册任务分片;其中,业务参数包括:业务执行时间、业务消息主题和执行业务时长;所述调度方为多个;
根据任务的执行时间从各任务分片中获取待执行任务,生成任务链表数组以及对应的任务执行线程;
按设定时间间隔从所述任务链表数组中获取任务,根据各调度方心跳监测结果,将任务输出至可用调度方,由所述可用调度方输出任务中的业务消息至业务处理方。
可选地,调度方根据任务注册请求从业务发起方获取对应的任务参数,完成任务创建,并根据所述业务参数预设业务类型,并将注册任务录入匹配业务类型对应的任务分片中,完成注册任务分片,包括:
调度方获取任务注册请求后,与业务发起方进行校验,获取业务参数;
根据业务发起方反馈的业务参数,生成一条任务,并将任务写入调度方对应的数据库中,并根据所述业务消息主题匹配对应的预设业务类型,获取匹配的业务类型对应的任务分片,将对应任务通过所述任务分片进行持久化;
将完成任务注册的调度方的地址通过协调方进行配置管理,各业务发起方根据协调方提供的配置信息,监听对应调度方的消息。
可选地,调度方获取任务注册请求后,与业务发起方进行校验,获取业务参数,包括:
调度方接收多个业务发起方发送的注册任务,通过所述协调方从多个业务发起方中选择一个作为主业务发起方;
所述主业务发起方接管业务参数录入。
可选地,并根据所述业务消息主题匹配对应的预设业务类型,获取匹配的业务类型对应的任务分片,将对应任务通过所述任务分片进行持久化,包括:
计算所述业务消息主题与预设业务类型的相似度,将达到相似度阈值的业务类型对应的任务分片作为对应已注册任务的子库,以此获取多个子库;
通过所述子库触发选择服务节点,获取服务资源,完成任务入库。
可选地,所述任务入库之前,包括:
将任务存储服务资源池化,将多个设备的服务资源整合在一起,并通过调度方进行统一管理;
调度方进行任务调度,每次涉及创建任务数据库分片时触发服务节点选取;
服务节点选取成功后,为任务数据库生成分片信息,执行分片资源的预分配;
根据分片预分配的资源及选取的服务节点,远程调用对应的服务节点,将分片挂载在多个选取的服务节点的存储资源中,实现任务数据库分片的创建;
将创建的分片信息、服务节点关系信息统一持久化。
可选地,任务入库包括:
根据任务分片对应服务节点的剩余资源对任务分片进行排序操作,将剩余资源最优的任务分片取出;
通过锁机制进行任务分片资源预占用,如果预占分片资源失败,则当前任务分片已无可用资源;如果预占用分片资源成功,则将通过调用任务服务节点实现任务入库;
将任务入库成功的信息和预占用任务分片信息进行确认生效,完成持久化操作。
可选地,完成任务入库后,保持各服务节点数据一致性,包括:
增加补偿机制,服务节点任务调用失败时,将失败的调用节点和任务请求信息录入指令队列,定时从所述指令队列中获取任务请求执行任务调用。
一种分布式任务调度装置,包括:
任务注册模块,用于调度方根据任务注册请求从业务发起方获取对应的任务参数,完成任务创建,并根据所述业务参数匹配预设业务类型,并将注册任务录入匹配业务类型对应的任务分片中,完成注册任务分片;其中,业务参数包括:业务执行时间、业务消息主题和执行业务时长;调度方为多个;
任务链生成模块,用于根据注册任务的执行时间从各任务分片中获取待执行任务,生成任务链表数组以及对应的任务执行线程;
一种计算机设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述的分布式任务调度方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述的分布式任务调度方法的步骤。
如上所述,本发明一种分布式任务调度方法、装置、设备和介质,具有以下有益效果。
自动匹配业务类型完成任务分片,便于根据业务类型进行任务管理以及任务追溯,提高任务管理效率;通过任务注册机制将任务与对应各业务逻辑分离,在管理任务时不需要关注对应业务执行逻辑,基于任务执行时间进行任务的调度管理,结合心跳检测机制协调调度方,将调度方与任务解耦,增强系统调度任务的鲁棒性,以及调度方的可扩展能力;通过对任务进行分片持久化,充分利用服务器资源,保障任务执行和追溯的准确性和高效性。
附图说明
图1为本发明一实施例中分布式任务调度方法的流程示意图。
图2为本发明一实施例中任务持久化的流程示意图。
图3为本发明一实施例中任务分片的流程示意图。
图4为本发明一实施例中分布式任务调度装置的模块图。
图5为本发明一实施例中计算机设备的结构示意图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
请参阅图1,本发明提供了一种分布式任务调度方法,包括以下步骤:
步骤S1:调度方根据任务注册请求从业务发起方获取对应的任务参数,完成任务创建,并根据所述业务参数匹配预设业务类型,并将注册任务录入匹配业务类型对应的任务分片中,完成注册任务分片;其中,业务参数包括:业务执行时间、业务消息主题和执行业务时长;所述调度方为多个;
步骤S2:根据任务的执行时间从各任务分片中获取待执行任务,生成任务链表数组以及对应的任务执行线程;
步骤S3:按设定时间间隔从所述任务链表数组中获取任务,根据各调度方心跳监测结果,将任务输出至可用调度方,由所述可用调度方输出任务中的业务消息至业务处理方。
下面以结合工作流程对分布式任务调度方法的步骤进行说明。
在步骤S1中,调度方根据任务注册请求从业务发起方获取对应的任务参数,完成任务创建,并根据所述业务参数匹配预设业务类型,并将注册任务录入匹配业务类型对应的任务分片中,完成注册任务分片;其中,业务参数包括:业务执行时间、业务消息主题和执行业务时长;所述调度方为多个;
请参阅图2,在一实施例中,调度方根据任务注册请求从业务发起方获取对应的任务参数,完成任务创建,并根据所述业务参数预设业务类型,并将注册任务录入匹配业务类型对应的任务分片中,完成注册任务分片,包括:
步骤S101,调度方获取任务注册请求后,与业务发起方进行校验,获取业务参数,其中业务参数包括:业务执行时间、业务消息主题和执行业务时长;
步骤S102,根据业务发起方反馈的业务参数,生成一条任务,并将任务写入调度方对应的数据库中,并根据所述业务消息主题匹配对应的预设业务类型,获取匹配的业务类型对应的任务分片,将对应任务通过所述任务分片进行持久化;
步骤S103,将完成任务注册的调度方的地址通过协调方进行配置管理,各业务发起方可根据协调方提供的配置信息,监听对应调度方的消息。
具体地,调度方获取任务注册请求后,与业务发起方进行校验,获取业务参数以生成任务并完成任务持久化,其中业务参数包括:业务执行时间、业务消息主题、执行业务时长等。
具体地,可构建业务系统,业务系统可由多个服务器组成。业务系统的服务器根据业务需求信息生成任务注册请求,并发送注册任务至调度方。
在一实施例中,调度方获取任务注册请求后,与业务发起方进行校验,获取业务参数,包括:
调度方接收多个业务发起方发送的注册任务,通过所述协调方从多个业务发起方中选择一个作为主业务发起方;
所述主业务发起方接管业务参数录入。
由于可能存在多个服务器同时进行任务注册的情况,调度方在接收到多个服务器发送的注册任务后,可通过协调方从多个服务器中选择一个主服务器进行任务注册。具体地,可采用zookeeper作为协调方。Zookeeper是一个开放源码的分布式应用程序协调服务,是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。通过zookeeper选择一个服务器作为leader,在某一时刻只有leader进行任务注册。其他服务器可将业务消息发送给leader,由leader完成任务注册。
调度方进行任务注册时,根据业务发起方反馈的业务参数,生成一条任务,并将任务写入调度方对应的数据库中,进行任务持久化。同时可将完成任务注册的调度方的地址通过协调方进行配置管理,各业务发起方可根据协调方提供的配置信息,监听对应调度方的消息。
当任务发起方可同步进行多个任务注册,调度方接收到多个任务注册请求时,根据任务执行时间以及执行业务时长对多个任务进行校验。示例性地,假设A任务执行时间为9时40分,执行业务时长为1分钟;B任务执行时间为9时38分、执行业务时长为30秒,C任务执行时间为9时40分30秒,则A与B的时间不存交叉,可正常注册任务,A与C的时间存在交叉,输出反馈信息至任务发起方,由任务发起方重新配置对应任务的任务参数。
示例性地,业务系统的服务器A、B、C分别发起任务注册请求,调度方x1获取任务注册请求后,将业务发起方信息发送给zookeeper,zookeeper选择一个服务器A作为主服务器进行任务注册,同时,zookeeper根据调度方的地址生成配置信息,发送给业务系统的主服务器A,由主服务器A根据调度方地址向对应调度方发起任务注册请求,完成注册。
调度方可以为由多个服务器组成的调度集群,每个服务器作为一个调度方。业务系统可自主选择其中一个调度方进行任务注册。
在一实施例中,可以执行任务注册的调度方为起点,向其余各调度方发送心跳信息,根据检测其余调度方的心跳响应信息,确定可用调度方。具体地,执行任务注册的调度方可按照设定的第一时间间隔向其余个调度方发送固定数据包(如可以是内容为空的ping信息),若其中任意一个调度方在约定时间区间内返回心跳响应信息,则表明至少存在一个调度方与执行任务注册的调度方之间的连接处于存活期间,该调度方可作为执行任务注册的调度方的备用调度方。
调度方完成任务注册后,将已注册任务写入数据库,等待任务执行调用。
在一实施例中,根据所述业务消息主题匹配对应的预设业务类型,获取匹配的业务类型对应的任务分片,将对应任务通过所述任务分片进行持久化,还包括:
计算所述业务消息主题与预设业务类型的相似度,将达到相似度阈值的业务类型对应的任务分片作为对应已注册任务的子库,以此获取多个子库;
通过所述子库触发选择服务节点,获取服务资源,完成任务入库。
具体地,可通过分类算法计算业务消息主题与服务器端预设业务类型间的相似度。在此之前,可将预设业务类型与任务分片关联,每个业务类型对应一个任务分片。分类算法可采用循环神经网络算法,具体的分类聚类算法为现有技术这里不再赘述。获取已注册任务对应的任务分片(即子库)后,可进一步触发任务分片的服务器资源调度。
在将任务写入数据库之前,可根据任务参数筛选出符合条件的服务资源。服务资源可包括存储资源、处理器资源等。以存储资源为例,可预先将各设备的存储资源进行池化处理,建立虚拟存储资源层,用于各类业务对应的任务数据库的创建。处理大量任务时,由于不同业务主体对应业务版块以及服务资源需求不同,可预先设置业务主体作为过滤条件,从虚拟存储资源层中筛选出业务主体的存储资源,用于创建服务节点。
根据已注册任务的任务参数匹配多个子库后,可触发服务节点的选取。具体地,可按照预设的选取规则进行服务节点选取。如可设置选取规则为:服务节点可用,即服务在线且服务节点处于空闲状态,服务本身无待执行的同步操作指令等;或统计每个服务节点的内存使用量,选择剩余内存资源百分比最优的服务节点。
子库挂载在选取的多个服务节点上,每个服务节点作为该子库的一个备份。可根据子库信息(如占用空间大小等),为子库预分配存储空间等资源。保持子库在每个服务节点占用的资源相同,以确保数据一致性。
可通过远端调用的方式从其他设备或资源池中选取服务节点,并将子库与服务节点进行关联,得到任务数据库。
在一实施例中,所述任务入库之前,包括:
将任务存储服务资源池化,将多个设备的服务资源整合在一起,并通过调度方进行统一管理;
调度方进行任务调度,每次涉及创建任务数据库分片时触发服务节点选取;
服务节点选取成功后,为任务数据库生成分片信息,执行分片资源的预分配;
根据分片预分配的资源及选取的服务节点,远程调用对应的服务节点,将分片挂载在多个选取的服务节点的存储资源中,实现任务数据库分片的创建;
将创建的分片信息、服务节点关系信息统一持久化。
请参阅图3,具体地,以产品推送任务为例,具体包括以下步骤:
步骤S104.将产品推送任务存储服务资源池化,将多个设备的服务资源整合在一起,并通过调度方进行统一管理。系统将请求创建的任务的主题作为首次过滤条件,筛选指定产品主题的任务。
步骤S105.调度方进行产品推送任务调度,每次涉及创建任务数据库分片(即任务子库)时触发服务节点选取,选取规则为:1)可用服务,包括在线且服务本身无待执行同步操作指令,2)统计引擎下每个人脸服务资源(内存)使用量,选择剩余资源余量百分比最优的服务节点,完成服务节点的选取。
步骤S106.服务节点选取成功后,为任务数据库生成分片信息,执行分片资源的预分配,如分片信息需占用的存储资源等。
步骤S107.根据分片预分配的资源及选取的服务节点,远程调用对应的服务节点,将分片挂载在多个选取的服务节点的存储资源中,实现任务数据库分片的创建。
步骤S108.将创建的分片信息、服务节点关系信息统一持久化,转换为可存储数据类型进行保存。
在一实施例中,可为每个任务数据库分配唯一ID标识。ID标识可用于区分不同主题的任务数据库。当需要对任务数据库中的任务进行更新时,根据获取待注册任务对应的任务参数,匹配任务数据库库的ID标识,获取一个或多个匹配的任务数据库。将各任务数据库对应的子库作为子库集合,统计每个子库集合中每个子库对应的多个服务节点的剩余资源,按照资源余量进行排序,选出剩余资源最优的子库,用于录入已注册任务。
由于在并发操作过程中,读取操作的数据在使用中存在延时,所以经过排序得到的子库在使用时仍然不能断定资源剩余情况。可设置预占用指令,具体地,可根据待注册任务所需要的资源设置预占用指令,尝试预先占用通过排序得到的子库的剩余资源。如果预占用失败,说明当前子库没有可用资源,需要进行子库扩充,如可新建子库,用于录入待注册任务;若预占用成功,则直接调用服务节点,将待注册任务挂载在服务节点上的备份子库中,从而实现任务入库操作。
将任务写入对应的子库后,可生成入库成功信息,将入库成功信息与预占用指令进行校准生效,并通过持久化操作将任务对应的数据类型转换为存储数据类型,以完成任务入库操作。
在一实施例中,任务入库可包括以下步骤:
通过请求的任务数据库识别标识获取对应的任务数据库分片信息,根据分片对应服务节点的剩余资源对分片进行排序操作,将剩余资源最优的分片取出;
通过锁机制进行分片资源预占用,如果预占分片资源失败,则当前分片已无可用资源;如果预占用分片资源成功,则将通过调用任务服务节点实现任务入库;
将任务入库成功的信息和预占用分片信息进行确认生效,完成持久化操作。具体地,任务入库可包括以下步骤:
S201.通过请求的任务数据库ID获取对应的任务数据库分片信息,根据分片对应服务节点的剩余资源对分片进行排序操作,将剩余资源最优的分片取出。如B分片挂载在2个服务节点上,两个服务节点中至少一个服务节点的剩余资源大于50%,满足任务存储需求;C分片挂载在3个服务节点上,而三个服务节点的剩余资源均低于40%,则B分片最优,去除C分片。
通过资源统计排序,对于经过任务删除操作释放存储空间的分片,得以重复利用。
S202.通过上一步排序获取到的分片在使用时仍然不能断定分片资源是否已经用尽,因为在并发操作过程中,读取操作的数据在使用中存在延时,故需要通过锁机制尝试预占用分片资源,确保控制远端服务节点上分片的容量一致。S203.如果预占分片资源失败,说明当前分片已无可用资源,需要系统实现自动扩充该任务数据库的分片,创建分片的过程类似于创建任务数据库的流程,这里不再赘述。
S204.预占服务节点上分片资源成功后,将通过调用任务服务节点实现任务入库。
S205.将任务入库成功的信息和预占分片信息进行确认生效,完成持久化操作。
当对某一个服务节点进行数据变动操作时,容易导致多个服务节点之间出现数据不一致的情形,因此,可引入补偿机制,当请求对某一服务节点进行变动(如增加服务资源、删除服务资源、修改服务资源等)时,对变动请求进行有效性判断。具体地,在多个服务节点的调用中,只要存在一个服务节点调用成功,则请求为有效;若不存在或调用服务节点超时,则将待调用的服务节点和请求信息录入消息队列,定时读取消息队列中的信息,执行补偿操作。如可周期性的重放需执行的请求信息,将请求信息按照子库挂载的服务节点的维度进行重发(如子库A分别挂载在4个服务节点上,则对应的维度为4,在进行重放操作时,分别向4个服务节点重放请求信息),执行成功后,移除请求信息;若重放失败的次数超出设定阈值,则启动通知信息,反馈给管理人员,通过手动方式或其他方式接入服务节点所需要的应用服务。通过补偿机制保障子库挂载的每个服务节点通过消息队列执行统一操作,保障数据一致性。补偿机制具体为:服务节点任务调用失败时,将失败的调用节点和任务请求信息录入指令队列;定时从所述指令队列中获取任务请求执行任务调用。
具体地,保障数据一致性的步骤具体包括:
S401.导致同一子库挂载的多个服务节点状态不一致的问题通常是由于多服务节点数据变动操作未能全部统一执行。针对这样的操作需要增加补偿机制。
S402.服务节点数据变动操作主要是调用任务的增、删、改,只要存在调用失败、超时情况,则判断调用失败。
S403.操作的有效性判断规则:多服务节点调用中,只要存在一个节点服务调用成功,本次请求即为有效。
S404.对于操作失败的调用,将调用的节点和请求信息记录指令队列中,由引擎中定时任务完成补偿操作。
S405.定时任务功能周期性重放需执行的操作指令,操作指令与服务节点有关,将服务节点下所有待执行指令按照任务数据库分片维度重发执行,执行成功后的指令将被移除;多次重放仍失败的将通知接入应用。即若子库A分别挂载在a、b、c三个服务节点上,a节点被调用成功,执行了删除任务、增加任务等操作,b节点和c节点则被录入指令队列,可延后指定时间执行相同的增或删操作,保持统一子库对应的所有服务节点数据的一致性。
在一实施例中,可设置任务中心,用于存储所有任务数据库中包含的已注册任务,在任务入库更新子库的同时,将待入库任务存入任务中心进行备份。当挂载在某个服务节点的子库存在数据丢失时,可根据任务数据库的ID标识从任务中心读取该子库丢失的任务数据,从而实现节点数据重建。当整个任务数据库的数据丢失时,标记任务数据库对应的所有子库及服务节点,并根据标记信息创建恢复任务,并将恢复任务入栈到消息队列中。可设定消息队列中恢复任务的执行时间,如白天处理数据量较大,为不影响白天的工作任务,可设置夜间业务量较少的时间段如(晚上11点到第二天凌晨3点),执行恢复任务,并通过服务节点查找到待恢复的任务集合,从任务中心获取丢失的数据信息并录入待恢复的任务数据库及对应的子库中。
经过以上步骤完成任务数据库及子库创建后,可将每个任务数据库以及对应的子库中的任务按任务执行时间先后进行排序,进而完成持久化。按照任务主题进行任务分片,可方便查询和管理同类任务,同时各子库数据保持一致,任务数据丢失时,便于找回,也可合理利用服务器资源,保障大量任务数据顺利高效的被调用执行。
S2:根据注册任务的执行时间,生成任务链表数组以及对应的任务执行线。
在一实施例中,调度方可从本地任务数据库中读取存储的任务,生成任务队列,完成任务执行线程的加载。具体地,调度方可每300秒加载一个需要执行的任务到任务队列的队尾。以固定频率进行任务加载和执行,保障任务的处理速率,应对大量任务时更为从容。
在一实施例中,所述任务执行线程根据生成的任务队列创建并维护任务链表数组。具体地,任务链表数组中的每个元素都是一个双向循环链表。双向循环链表是指双向链表中每一个节点有两个指针,一个指针用于指向上一个节点(前驱),另一个指针用于指向下一个节点(后继)。
将任务队列中的任务按照执行时间间隔依次存入链表数组中。具体地,比对任务队列中各任务的执行时间间隔,按时间间隔的先后顺序依次放入链表数组中,作为链表数组中的元素。
S3:按设定时间间隔从所述任务链表数组中获取任务,根据各调度方心跳监测结果,将任务输出至可用调度方,由所述可用调度方输出任务中的业务消息至业务处理方。
具体地,执行线程时,以固定的时间间隔遍历链表数组,选择符合时间间隔的任务输出,并将该任务从链表数组中删除。示例性地,若以当前时刻为起点,设置间隔时间为2分钟,若在两分钟内有2个任务需要执行,则取出对应任务。可通过执行线程不断从链表数组中产生待执行任务。示例性地,可采用高性能开源异步并发处理框架Disruptor接收线程从链表数组中获取的任务,生成待执行任务的核心任务队列。业务处理方可根据调用方的地址监听调用方的任务队列中的任务,取出对应的待执行任务,获取任务中的业务信息,进行业务逻辑层面的业务解析处理,完成任务执行。
当其中一个调用方宕机时,调用前述心跳监测获取的可用调用方,自动将服务器上的任务分配给未宕机的服务器。
在任务执行过程中,调用方可通过协调方从业务系统中业务处理方对应的服务器中选出一个主服务器,当其他业务处理方存在任务过时未执行时,可由主服务器接管未执行任务。当主服务器宕机时,也可由协调方重新选出主服务器。在多个服务器分别执行对应任务时,由于故障或处理能力的限制,部分任务无法及时执行,通过协调方进行任务失效转移,实现系统容错。
在一实施例中,可增减调度方服务器数量,在调度方与业务系统间进行消息传输时,业务系统可自由选择对应服务器作为调用方进行任务注册和管理,增强扩展能力。
服务器可以是独立的服务器,也可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(ContentDelivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。
在一实施例中,如图4所示,提供一种分布式任务调度装置,该装置包括:任务注册模块10,用于调度方根据任务注册请求从业务发起方获取对应的任务参数,完成任务创建,并根据所述业务参数匹配预设业务类型,并将注册任务录入匹配业务类型对应的任务分片中,完成注册任务分片;其中,业务参数包括:业务执行时间、业务消息主题和执行业务时长;调度方为多个;任务链生成模块11,用于根据注册任务的执行时间从各任务分片中获取待执行任务,生成任务链表数组以及对应的任务执行线程;调度执行模块12,用于按设定时间间隔从所述任务链表数组中获取任务,根据各调度方心跳监测结果,将任务输出至可用调度方,由所述可用调度方输出任务中的业务消息至业务处理方。
在一实施例中,任务注册模块10包括:业务参数获取单元,用于调度方获取任务注册请求后,与业务发起方进行校验,获取业务参数;任务持久化单元,用于根据业务发起方反馈的业务参数,生成一条任务,并将任务写入调度方对应的数据库中,并根据所述业务消息主题匹配对应的预设业务类型,获取匹配的业务类型对应的任务分片,将对应任务通过所述任务分片进行持久化;消息监听单元,用于将完成任务注册的调度方的地址通过协调方进行配置管理,各业务发起方根据协调方提供的配置信息,监听对应调度方的消息。
在一实施例中,业务参数获取单元包括:主从配置组件,用于调度方接收多个业务发起方发送的注册任务,通过所述协调方从多个业务发起方中选择一个作为主业务发起方;任务分配组件,用于所述主业务发起方接管业务参数录入。
在一实施例中,任务持久化单元包括:子库创建组件,用于计算所述业务消息主题与预设业务类型的相似度,将达到相似度阈值的业务类型对应的任务分片作为对应已注册任务的子库,以此获取多个子库;资源配置组件,用于通过所述子库触发选择服务节点,获取服务资源,完成任务入库。
在一实施例中,装置还包括:资源整合管理单元,用于将任务存储服务资源池化,将多个设备的服务资源整合在一起,并通过调度方进行统一管理;节点选取单元,用于调度方进行任务调度,每次涉及创建任务数据库分片时触发服务节点选取;分片资源预分配单元,用于服务节点选取成功后,为任务数据库生成分片信息,执行分片资源的预分配;分片创建单元,用于根据分片预分配的资源及选取的服务节点,远程调用对应的服务节点,将分片挂载在多个选取的服务节点的存储资源中,实现任务数据库分片的创建;关联存储单元,用于将创建的分片信息、服务节点关系信息统一持久化。
在一实施例中,装置还包括:资源排序单元,用于根据任务分片对应服务节点的剩余资源对任务分片进行排序操作,将剩余资源最优的任务分片取出;资源锁单元,用于通过锁机制进行任务分片资源预占用,如果预占分片资源失败,则当前任务分片已无可用资源;如果预占用分片资源成功,则将通过调用任务服务节点实现任务入库;任务入库单元,用于将任务入库成功的信息和预占用任务分片信息进行确认生效,完成持久化操作。
在一实施例中,装置还包括数据校验单元,用于完成任务入库后,保持各服务节点数据一致性。数据校验单元包括补偿组件,用于增加补偿机制,服务节点任务调用失败时,将失败的调用节点和任务请求信息录入指令队列,定时从所述指令队列中获取任务请求执行任务调用。
上述分布式任务调度装置可以以一种计算机程序的形式实现,计算机程序可以在如图5所示的计算机设备上运行。分布式任务调度设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序。
上述分布式任务调度装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于终端的存储器中,也可以以软件形式存储于终端的存储器中,以便于处理器调用执行以上各个模块对应的操作。该处理器可以为中央处理单元(CPU)、微处理器、单片机等。
如图5所示,为一个实施例中计算机设备的内部结构示意图。提供了一种计算机设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:调度方根据任务注册请求从业务发起方获取对应的任务参数,完成任务创建,并根据所述业务参数匹配预设业务类型,并将注册任务录入匹配业务类型对应的任务分片中,完成注册任务分片;其中,业务参数包括:业务执行时间、业务消息主题和执行业务时长;所述调度方为多个;根据任务的执行时间从各任务分片中获取待执行任务,生成任务链表数组以及对应的任务执行线程;按设定时间间隔从所述任务链表数组中获取任务,根据各调度方心跳监测结果,将任务输出至可用调度方,由所述可用调度方输出任务中的业务消息至业务处理方。
在一实施例中,上述处理器执行时,所实现的调度方根据任务注册请求从业务发起方获取对应的任务参数,完成任务创建,并根据所述业务参数预设业务类型,并将注册任务录入匹配业务类型对应的任务分片中,完成注册任务分片,包括:调度方获取任务注册请求后,与业务发起方进行校验,获取业务参数;根据业务发起方反馈的业务参数,生成一条任务,并将任务写入调度方对应的数据库中,并根据所述业务消息主题匹配对应的预设业务类型,获取匹配的业务类型对应的任务分片,将对应任务通过所述任务分片进行持久化;将完成任务注册的调度方的地址通过协调方进行配置管理,各业务发起方根据协调方提供的配置信息,监听对应调度方的消息。
在一实施例中,上述处理器执行时,所实现的调度方获取任务注册请求后,与业务发起方进行校验,获取业务参数,包括:调度方接收多个业务发起方发送的注册任务,通过所述协调方从多个业务发起方中选择一个作为主业务发起方;所述主业务发起方接管业务参数录入。
在一实施例中,上述处理器执行时,所实现的根据所述业务消息主题匹配对应的预设业务类型,获取匹配的业务类型对应的任务分片,将对应任务通过所述任务分片进行持久化,包括:计算所述业务消息主题与预设业务类型的相似度,将达到相似度阈值的业务类型对应的任务分片作为对应已注册任务的子库,以此获取多个子库;通过所述子库触发选择服务节点,获取服务资源,完成任务入库。
在一实施例中,上述处理器执行时,所实现的所述任务入库之前,包括:将任务存储服务资源池化,将多个设备的服务资源整合在一起,并通过调度方进行统一管理;调度方进行任务调度,每次涉及创建任务数据库分片时触发服务节点选取;服务节点选取成功后,为任务数据库生成分片信息,执行分片资源的预分配;根据分片预分配的资源及选取的服务节点,远程调用对应的服务节点,将分片挂载在多个选取的服务节点的存储资源中,实现任务数据库分片的创建;将创建的分片信息、服务节点关系信息统一持久化。
在一实施例中,上述处理器执行时,所实现的任务入库包括:根据任务分片对应服务节点的剩余资源对任务分片进行排序操作,将剩余资源最优的任务分片取出;通过锁机制进行任务分片资源预占用,如果预占分片资源失败,则当前任务分片已无可用资源;如果预占用分片资源成功,则将通过调用任务服务节点实现任务入库;将任务入库成功的信息和预占用任务分片信息进行确认生效,完成持久化操作。
在一实施例中,上述处理器执行时,所实现的完成任务入库后,保持各服务节点数据一致性,包括:增加补偿机制,服务节点任务调用失败时,将失败的调用节点和任务请求信息录入指令队列,定时从所述指令队列中获取任务请求执行任务调用。
在一个实施例中,上述的计算机设备可用作服务器,包括但不限于独立的物理服务器,或者是多个物理服务器构成的服务器集群,该计算机设备还可用作终端,包括但不限手机、平板电脑、个人数字助理或者智能设备等。如图5所示,该计算机设备包括通过系统总线连接的处理器、非易失性存储介质、内存储器、显示屏和网络接口。
其中,该计算机设备的处理器用于提供计算和控制能力,支撑整个计算机设备的运行。计算机设备的非易失性存储介质存储有操作系统和计算机程序。该计算机程序可被处理器所执行,以用于实现以上各个实施例所提供的一种分布式任务调度方法。计算机设备中的内存储器为非易失性存储介质中的操作系统和计算机程序提供高速缓存的运行环境。显示界面可通过显示屏进行数据展示。显示屏可以是触摸屏,比如为电容屏或电子屏,可通过接收作用于该触摸屏上显示的控件的点击操作,生成相应的指令。
本领域技术人员可以理解,图5中示出的计算机设备的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。本申请可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:调度方根据任务注册请求从业务发起方获取对应的任务参数,完成任务创建,并根据所述业务参数匹配预设业务类型,并将注册任务录入匹配业务类型对应的任务分片中,完成注册任务分片;其中,业务参数包括:业务执行时间、业务消息主题和执行业务时长;所述调度方为多个;根据任务的执行时间从各任务分片中获取待执行任务,生成任务链表数组以及对应的任务执行线程;按设定时间间隔从所述任务链表数组中获取任务,根据各调度方心跳监测结果,将任务输出至可用调度方,由所述可用调度方输出任务中的业务消息至业务处理方。
在一实施例中,该计算机程序被处理器执行时,所实现的调度方根据任务注册请求从业务发起方获取对应的任务参数,完成任务创建,并根据所述业务参数预设业务类型,并将注册任务录入匹配业务类型对应的任务分片中,完成注册任务分片,包括:调度方获取任务注册请求后,与业务发起方进行校验,获取业务参数;根据业务发起方反馈的业务参数,生成一条任务,并将任务写入调度方对应的数据库中,并根据所述业务消息主题匹配对应的预设业务类型,获取匹配的业务类型对应的任务分片,将对应任务通过所述任务分片进行持久化;将完成任务注册的调度方的地址通过协调方进行配置管理,各业务发起方根据协调方提供的配置信息,监听对应调度方的消息。
在一实施例中,该计算机程序被处理器执行时,所实现的调度方获取任务注册请求后,与业务发起方进行校验,获取业务参数,包括:调度方接收多个业务发起方发送的注册任务,通过所述协调方从多个业务发起方中选择一个作为主业务发起方;所述主业务发起方接管业务参数录入。
在一实施例中,该计算机程序被处理器执行时,所实现的根据所述业务消息主题匹配对应的预设业务类型,获取匹配的业务类型对应的任务分片,将对应任务通过所述任务分片进行持久化,包括:计算所述业务消息主题与预设业务类型的相似度,将达到相似度阈值的业务类型对应的任务分片作为对应已注册任务的子库,以此获取多个子库;通过所述子库触发选择服务节点,获取服务资源,完成任务入库。
在一实施例中,该计算机程序被处理器执行时,所实现的所述任务入库之前,包括:将任务存储服务资源池化,将多个设备的服务资源整合在一起,并通过调度方进行统一管理;调度方进行任务调度,每次涉及创建任务数据库分片时触发服务节点选取;服务节点选取成功后,为任务数据库生成分片信息,执行分片资源的预分配;根据分片预分配的资源及选取的服务节点,远程调用对应的服务节点,将分片挂载在多个选取的服务节点的存储资源中,实现任务数据库分片的创建;将创建的分片信息、服务节点关系信息统一持久化。
在一实施例中,该计算机程序被处理器执行时,所实现的任务入库包括:根据任务分片对应服务节点的剩余资源对任务分片进行排序操作,将剩余资源最优的任务分片取出;通过锁机制进行任务分片资源预占用,如果预占分片资源失败,则当前任务分片已无可用资源;如果预占用分片资源成功,则将通过调用任务服务节点实现任务入库;将任务入库成功的信息和预占用任务分片信息进行确认生效,完成持久化操作。
在一实施例中,该计算机程序被处理器执行时,所实现的完成任务入库后,保持各服务节点数据一致性,包括:增加补偿机制,服务节点任务调用失败时,将失败的调用节点和任务请求信息录入指令队列,定时从所述指令队列中获取任务请求执行任务调用。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等。
综上所述,本发明一种分布式任务调度方法、装置、设备和介质,通过将任务的业务逻辑与任务调度相分离,通过调度服务器根据加载的任务维护任务链表数组,通过监测调度服务器集群心跳,将任务自动协调到可用调度方,业务系统只针对任务中的业务消息进行处理,保证任务调度执行不受业务信息的限制,以及个别服务器宕机时仍能准确维持正常任务调度,保障业务信息准确执行,提高容错率;调度方可进行水平扩展,增加调度方的服务器数量;通过检测服务器心跳完成调度协调,任务与调度方解耦,可实现失效转移;任务分片利用存储资源,便于进行任务追溯,以及协调任务资源;引入协调方,实现负载均衡的同时,带来了集群容错机制,支持失效转移。所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
Claims (10)
1.一种分布式任务调度方法,其特征在于,包括:
调度方根据任务注册请求从业务发起方获取对应的任务参数,完成任务创建,并根据所述业务参数匹配预设业务类型,并将注册任务录入匹配业务类型对应的任务分片中,完成注册任务分片;其中,业务参数包括:业务执行时间、业务消息主题和执行业务时长;所述调度方为多个;
根据任务的执行时间从各任务分片中获取待执行任务,生成任务链表数组以及对应的任务执行线程;
按设定时间间隔从所述任务链表数组中获取任务,根据各调度方心跳监测结果,将任务输出至可用调度方,由所述可用调度方输出任务中的业务消息至业务处理方。
2.根据权利要求1所述的分布式任务调度方法,其特征在于,调度方根据任务注册请求从业务发起方获取对应的任务参数,完成任务创建,并根据所述业务参数预设业务类型,并将注册任务录入匹配业务类型对应的任务分片中,完成注册任务分片,包括:
调度方获取任务注册请求后,与业务发起方进行校验,获取业务参数;
根据业务发起方反馈的业务参数,生成一条任务,并将任务写入调度方对应的数据库中,并根据所述业务消息主题匹配对应的预设业务类型,获取匹配的业务类型对应的任务分片,将对应任务通过所述任务分片进行持久化;
将完成任务注册的调度方的地址通过协调方进行配置管理,各业务发起方根据协调方提供的配置信息,监听对应调度方的消息。
3.根据权利要求2所述的分布式任务调度方法,其特征在于,调度方获取任务注册请求后,与业务发起方进行校验,获取业务参数,包括:
调度方接收多个业务发起方发送的注册任务,通过所述协调方从多个业务发起方中选择一个作为主业务发起方;
所述主业务发起方接管业务参数录入。
4.根据权利要求2所述的分布式任务调度方法,其特征在于,根据所述业务消息主题匹配对应的预设业务类型,获取匹配的业务类型对应的任务分片,将对应任务通过所述任务分片进行持久化,包括:
计算所述业务消息主题与预设业务类型的相似度,将达到相似度阈值的业务类型对应的任务分片作为对应已注册任务的子库,以此获取多个子库;
通过所述子库触发选择服务节点,获取服务资源,完成任务入库。
5.根据权利要求4所述的分布式任务调度方法,其特征在于,所述任务入库之前,包括:
将任务存储服务资源池化,将多个设备的服务资源整合在一起,并通过调度方进行统一管理;
调度方进行任务调度,每次涉及创建任务数据库分片时触发服务节点选取;
服务节点选取成功后,为任务数据库生成分片信息,执行分片资源的预分配;
根据分片预分配的资源及选取的服务节点,远程调用对应的服务节点,将分片挂载在多个选取的服务节点的存储资源中,实现任务数据库分片的创建;
将创建的分片信息、服务节点关系信息统一持久化。
6.根据权利要求4所述的分布式任务调度方法,其特征在于,任务入库包括:
根据任务分片对应服务节点的剩余资源对任务分片进行排序操作,将剩余资源最优的任务分片取出;
通过锁机制进行任务分片资源预占用,如果预占分片资源失败,则当前任务分片已无可用资源;如果预占用分片资源成功,则将通过调用任务服务节点实现任务入库;
将任务入库成功的信息和预占用任务分片信息进行确认生效,完成持久化操作。
7.根据权利要求6所述的分布式任务调度方法,其特征在于,完成任务入库后,保持各服务节点数据一致性,包括:
增加补偿机制,服务节点任务调用失败时,将失败的调用节点和任务请求信息录入指令队列,定时从所述指令队列中获取任务请求执行任务调用。
8.一种分布式任务调度装置,其特征在于,包括:
任务注册模块,用于调度方根据任务注册请求从业务发起方获取对应的任务参数,完成任务创建,并根据所述业务参数匹配预设业务类型,并将注册任务录入匹配业务类型对应的任务分片中,完成注册任务分片;其中,业务参数包括:业务执行时间、业务消息主题和执行业务时长;调度方为多个;
任务链生成模块,用于根据注册任务的执行时间从各任务分片中获取待执行任务,生成任务链表数组以及对应的任务执行线程;
调度执行模块,用于按设定时间间隔从所述任务链表数组中获取任务,根据各调度方心跳监测结果,将任务输出至可用调度方,由所述可用调度方输出任务中的业务消息至业务处理方。
9.一种计算机设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111088685.6A CN113760513A (zh) | 2021-09-16 | 2021-09-16 | 一种分布式任务调度方法、装置、设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111088685.6A CN113760513A (zh) | 2021-09-16 | 2021-09-16 | 一种分布式任务调度方法、装置、设备和介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113760513A true CN113760513A (zh) | 2021-12-07 |
Family
ID=78796066
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111088685.6A Pending CN113760513A (zh) | 2021-09-16 | 2021-09-16 | 一种分布式任务调度方法、装置、设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113760513A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114448893A (zh) * | 2021-12-24 | 2022-05-06 | 天翼云科技有限公司 | 一种cdn节点任务下发的聚合方法、装置及计算机设备 |
CN114625901A (zh) * | 2022-05-13 | 2022-06-14 | 南京维数软件股份有限公司 | 一种多算法整合方法及装置 |
CN115640968A (zh) * | 2022-10-18 | 2023-01-24 | 中电金信软件有限公司 | 作业调度方法、装置、电子设备和存储介质 |
CN116578405A (zh) * | 2023-07-13 | 2023-08-11 | 中国船舶集团有限公司第七〇七研究所 | 基于虚拟化架构的模拟训练方法及系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018072687A1 (zh) * | 2016-10-19 | 2018-04-26 | 华为技术有限公司 | 一种资源调度的方法、装置和过滤式调度器 |
CN109144683A (zh) * | 2017-06-28 | 2019-01-04 | 北京京东尚科信息技术有限公司 | 任务处理方法、装置、系统及电子设备 |
CN109558230A (zh) * | 2018-11-23 | 2019-04-02 | 北京百分点信息科技有限公司 | 一种分布式定时任务调度系统及方法 |
CN111290854A (zh) * | 2020-01-20 | 2020-06-16 | 腾讯科技(深圳)有限公司 | 任务管理方法、装置、系统、计算机存储介质及电子设备 |
CN111324435A (zh) * | 2020-02-06 | 2020-06-23 | 北京奇艺世纪科技有限公司 | 分布式任务调度及注册方法、设备和分布式任务调度系统 |
CN112333249A (zh) * | 2020-10-26 | 2021-02-05 | 新华三大数据技术有限公司 | 一种业务服务系统及方法 |
CN113296914A (zh) * | 2021-05-31 | 2021-08-24 | 中电福富信息科技有限公司 | 一种基于ZooKeeper的分布式任务调度系统及方法 |
-
2021
- 2021-09-16 CN CN202111088685.6A patent/CN113760513A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018072687A1 (zh) * | 2016-10-19 | 2018-04-26 | 华为技术有限公司 | 一种资源调度的方法、装置和过滤式调度器 |
CN109144683A (zh) * | 2017-06-28 | 2019-01-04 | 北京京东尚科信息技术有限公司 | 任务处理方法、装置、系统及电子设备 |
CN109558230A (zh) * | 2018-11-23 | 2019-04-02 | 北京百分点信息科技有限公司 | 一种分布式定时任务调度系统及方法 |
CN111290854A (zh) * | 2020-01-20 | 2020-06-16 | 腾讯科技(深圳)有限公司 | 任务管理方法、装置、系统、计算机存储介质及电子设备 |
CN111324435A (zh) * | 2020-02-06 | 2020-06-23 | 北京奇艺世纪科技有限公司 | 分布式任务调度及注册方法、设备和分布式任务调度系统 |
CN112333249A (zh) * | 2020-10-26 | 2021-02-05 | 新华三大数据技术有限公司 | 一种业务服务系统及方法 |
CN113296914A (zh) * | 2021-05-31 | 2021-08-24 | 中电福富信息科技有限公司 | 一种基于ZooKeeper的分布式任务调度系统及方法 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114448893A (zh) * | 2021-12-24 | 2022-05-06 | 天翼云科技有限公司 | 一种cdn节点任务下发的聚合方法、装置及计算机设备 |
CN114625901A (zh) * | 2022-05-13 | 2022-06-14 | 南京维数软件股份有限公司 | 一种多算法整合方法及装置 |
CN114625901B (zh) * | 2022-05-13 | 2022-08-05 | 南京维数软件股份有限公司 | 一种多算法整合方法及装置 |
CN115640968A (zh) * | 2022-10-18 | 2023-01-24 | 中电金信软件有限公司 | 作业调度方法、装置、电子设备和存储介质 |
CN116578405A (zh) * | 2023-07-13 | 2023-08-11 | 中国船舶集团有限公司第七〇七研究所 | 基于虚拟化架构的模拟训练方法及系统 |
CN116578405B (zh) * | 2023-07-13 | 2023-09-08 | 中国船舶集团有限公司第七〇七研究所 | 基于虚拟化架构的模拟训练方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113760513A (zh) | 一种分布式任务调度方法、装置、设备和介质 | |
CN109558234B (zh) | 一种定时任务调度方法和装置 | |
CN109558215A (zh) | 虚拟机的备份方法、恢复方法、装置及备份服务器集群 | |
CN109992354A (zh) | 容器处理方法、装置、主体服务器、系统和存储介质 | |
CN107077492A (zh) | 可扩展的基于日志的事务管理 | |
CN114356750A (zh) | 测试方法、装置、计算机设备和存储介质 | |
CN112579692A (zh) | 一种数据同步方法、装置、系统、设备及存储介质 | |
CN114780138B (zh) | 流场模拟软件代码版本管理方法、装置和存储介质 | |
CN109614270A (zh) | 基于Hbase的数据读写方法、装置、设备及存储介质 | |
CN111258726A (zh) | 任务调度方法和装置 | |
CN106874343B (zh) | 一种时序数据库的数据删除方法及系统 | |
CN113515317A (zh) | 数据恢复的方法、装置 | |
CN110737510A (zh) | 块设备管理系统 | |
CN111414356A (zh) | 数据存储方法、装置、非关系数据库系统及存储介质 | |
CN109697112A (zh) | 分布式集约化一站式作业系统和实现方法 | |
CN109614271A (zh) | 多个集群数据一致性的控制方法、装置、设备及存储介质 | |
CN116304390B (zh) | 时序数据处理方法、装置、存储介质及电子设备 | |
CN117076096A (zh) | 任务流程的执行方法、装置、计算机可读介质及电子设备 | |
CN113296872A (zh) | 容器状态查询方法、装置、设备、存储介质和系统 | |
CN113590643B (zh) | 基于双轨数据库的数据同步方法、装置、设备和存储介质 | |
CN114692585A (zh) | 表服务处理方法及系统 | |
CN112015534A (zh) | 配置化平台调度方法、系统及存储介质 | |
CN108958967A (zh) | 一种数据处理的方法以及服务器 | |
CN113806309A (zh) | 基于分布式锁的元数据删除方法、系统、终端及存储介质 | |
CN111782373A (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 |