[发明专利]一种基于MQ的云任务调度与执行的方法及系统在审
申请号: | 202210001176.3 | 申请日: | 2022-01-04 |
公开(公告)号: | CN114168304A | 公开(公告)日: | 2022-03-11 |
发明(设计)人: | 刘德建;黄云翔;黄种志;汪松;李佳 | 申请(专利权)人: | 福建天晴在线互动科技有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/54 |
代理公司: | 福州旭辰知识产权代理事务所(普通合伙) 35233 | 代理人: | 程勇 |
地址: | 350212 福*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 mq 任务 调度 执行 方法 系统 | ||
本发明提供了一种基于MQ的云任务调度与执行的方法,所述方法包括以下步骤:步骤S1、将消息队列的消息生产端设置为入口,设置任务参数;步骤S2、将任务参数插入到数据库中;步骤S3、给消息队列投递任务参数的消息;步骤S4、消息队列的消费模块实时消费任务参数的消息;步骤S5、消息队列的消费模块将任务参数的消息移交至云任务调度中心,构建任务参数的指令链;步骤S6、将云任务调度中心的生产模块作为消息队列的生产端,将指令链投递至消息队列中;步骤S7、将任务指令执行的客户端作为消息队列的消费端,消费指令链消息并处理,完成后实时回调至消息队列;本发明能够实现通过消息队列使任务调度中各个部件的耦合度降为零。
技术领域
本发明涉及计算机技术领域,特别是一种基于MQ的云任务调度与执行的方法及系统。
背景技术
在稍微大而复杂的系统中经常会涉及到任务调度能力,分解规模大小的执行单元以及构建清晰的任务链是任务调度的关键点。传统的任务调度系统在调度的各个环节或是Restfull或者RPC消息互相交织,增加了开发复杂度,为构建清晰的任务链造成了难度;另外,执行任务层面,传统的任务调度系统都是以任务为最小单元,而对任务中更细粒度的执行单元无法再次调度,原则上造成资源浪费。
发明内容
为克服上述问题,本发明的目的是提供一种能够实现通过消息队列使任务调度中各个部件的耦合度降为零的方法。
本发明采用以下方案实现:一种基于MQ的云任务调度与执行的方法,所述方法包括以下步骤:
步骤S1、将消息队列的消息生产端设置为入口,设置任务参数;
步骤S2、将任务参数插入到数据库中;
步骤S3、给消息队列投递任务参数的消息;
步骤S4、消息队列的消费模块实时消费任务参数的消息;
步骤S5、消息队列的消费模块将任务参数的消息移交至云任务调度中心,构建任务参数的指令链,指令链按照串并行方式传递至云任务调度中心的生产模块中;
步骤S6、将云任务调度中心的生产模块作为消息队列的生产端,将指令链投递至消息队列中;
步骤S7、将任务指令执行的客户端作为消息队列的消费端,消费指令链消息并处理,完成后实时回调至消息队列,从而通过消息队列实现任务调度的各个部件耦合度降为零。
进一步的,所述步骤S2进一步具体为:将任务参数按照格式插入至数据库中,根据任务参数的ID,从数据库中获取任务参数和任务类型对应的结构,后续发送至云任务调度中心的任务拆解与构建指令链模块进行使用,构建执行任务指令的先后顺序。
进一步的,所述步骤S3进一步具体为:给消息队列投递一条消息中转站为“任务”的消息,提供具体的任务参数ID,标注为${task_id}。
进一步的,所述步骤S5进一步具体为:消息队列的消费模块将带有ID任务参数的消息移交至云任务调度中心的任务拆解与构建指令链模块,构建任务参数的拓扑结构的指令链,指令链按照串并行方式传递至云任务调度中心的生产模块中。
进一步的,所述步骤S6进一步具体为:将云任务调度中心的生产模块作为消息队列的生产端,将指令链组建一条消息中转站的消息,名称为${command_id},且消息中带有任务参数的ID,并投递至消息队列中。
进一步的,所述步骤S7进一步具体为:将任务指令执行的客户端作为消息队列的消费端,消费消息中转站的指令链消息并处理,完成后实时将结果回调至消息队列,确认执行是否成功并确认执行结果的存放路径,从而通过消息队列实现任务调度的各个部件耦合度降为零。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于福建天晴在线互动科技有限公司,未经福建天晴在线互动科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210001176.3/2.html,转载请声明来源钻瓜专利网。