基于有向无环图的任务编排调度系统的制作方法

文档序号:33132120发布日期:2023-02-01 09:15阅读:83来源:国知局
基于有向无环图的任务编排调度系统的制作方法

1.本发明属于计算机技术领域,具体涉及基于有向无环图的任务编排调度系统。


背景技术:

2.随着“互联网+”时代的不断推进,大部分企业由于各自业务需求不同,分别研发设计出符合自己部门的应用系统,这些应用系统拥有各自的数据存储和访问方式,最终导致“数据孤岛”的现象,存在大量冗余数据,因此,如何将企业内部的复杂数据根据业务场景有效集成一直是一个重要的课题。目前数据集成可以有效的解决数据冗余和数据利用率下降的问题,实现数据共享。同时,数据集成也是企业建立数据仓库、进行数据挖掘、上层决策分析的重要组成部分。如今,数据集成的方法和技术虽然有效的解决了“数据孤岛”的现象,但是复杂的业务场景和简单的调度运行方式,使得相关数据集成任务配置繁琐复杂且运行效率低下,出现故障也难以快速定位问题,增加了政府部门及相关企业的开发维护成本,因此,运用自动化流程指导相关部门的运营和加速产品升级、争夺市场份额、促进数据融合一体化,也成为了企业发展的共识。在此背景下,基于有向无环图的任务编排调度技术应运而生;为此本发明提出了一种基于有向无环图的任务编排调度系统。


技术实现要素:

3.本发明的目的在于提供基于有向无环图的任务编排调度系统,以解决上述背景技术中提出的问题。
4.为实现上述目的,本发明提供如下技术方案:基于有向无环图的任务编排调度系统,包括任务触发器、流程解析引擎、任务启动器、任务加载器、任务执行器、任务总线;任务触发器,任务流的启动者,负责启动任务执行流;规则解析引擎,负责解析使用者配置的规则,与spring结合,将结构化的二进制数据解析成taskbean,然后通过解析引擎加载为任务装饰器,进而组装成任务图;任务启动器,负责通过使用解析引擎解析的任务图;结合juc并发框架调度实现对任务的统一管理,并加载任务准备环境;任务加载器,负责加载任务流程,开始调用任务执行器执行核心流程;任务执行器,最终的任务执行,每一个任务对应一个processexecutor,处理任务的拦截、异常、执行、复用必要条件的判断;任务总线,任务流程传递总线,包括请求参数、任务加载器、响应结果,该对象暴露给使用者,拿到匹配业务的数据信息。
5.优选的,所述任务总线还可以在系统基础拓展全链路监控、日志分析、线程池监控报警功能。
6.优选的,所述任务触发器通过quartz作业调度框架进行普通或定时任务配置,任务调度控制器scheduler中注册调度程序jobdetail与触发器trigger,调度任务元数据job,提供调度功能。
7.优选的,通过使用netty,客户端每一个任务的结果状态组装成日志对象序列化udp协议的方式传输到服务端完成对接入方任务的全链路监控能力。
8.优选的,所述的日志分析,通过客户端传输过来的日志信息,对接flink对业务数据做实时和离线数据分析。
9.优选的,所述线程池监控报警,通过客户端和服务端的长连接通道,可对任务管理框架实现线程池监控、报警、管理。
10.与现有技术相比,本发明的有益效果是:本发明提出的基于有向无环图的任务编排调度系统,能够解除依赖超时风险;在上游某个任务超时,不会因为等待该任务而导致其他的任务无法执行带来的请求保持问题,提高服务器 cpu使用效率;能够节省开发成本;节省代码流程设计的工作内容,在代码架构层面设计任务流转的场景下,需要诸多场景考虑,需要投入较大人力时间成本;需充分考虑异常拦截、任务拦截等场景;性能提升;释放主线程的请求等待问题, 在上游接口请求耗时越不均匀,中台接口请求越复杂时,能体现本技术的性能优势;能够提高效率;开发人员无需关注任务的流程设计,在出现新接口依赖需求的场景下,依赖于框架提供的服务编排能力,使用规则配置即可完成对新依赖服务的接入开发;适用于海量数据的复杂业务场景,可以更好的匹配复杂的业务场景,让整个任务编排根据业务可以实现模块化管理。
附图说明
11.图1为本发明的整体架构示意图;图2为本发明系统的核心能力示意图。
具体实施方式
12.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
13.请参阅图1至图2,本发明提供一种技术方案:基于有向无环图的任务编排调度系统,包括任务触发器、流程解析引擎、任务启动器、任务加载器、任务执行器、任务总线;任务触发器,任务流的启动者,负责启动任务执行流;规则解析引擎,负责解析使用者配置的规则,与spring结合,将结构化的二进制数据解析成taskbean,然后通过解析引擎加载为任务装饰器,进而组装成任务图;任务启动器,负责通过使用解析引擎解析的任务图;结合juc并发框架调度实现对任务的统一管理,并加载任务准备环境;任务加载器,负责加载任务流程,开始调用任务执行器执行核心流程;任务执行器,最终的任务执行,每一个任务对应一个processexecutor,处理任务的拦截、异常、执行、复用必要条件的判断;任务总线,任务流程传递总线,包括请求参数、任务加载器、响应结果,该对象暴露
给使用者,拿到匹配业务的数据信息。
14.本实施例中,优选的,所述任务总线还可以在系统基础拓展全链路监控、日志分析、线程池监控报警功能。
15.本实施例中,优选的,所述任务触发器通过quartz作业调度框架进行普通或定时任务配置,任务调度控制器scheduler中注册调度程序jobdetail与触发器trigger,调度任务元数据job,提供调度功能。
16.本实施例中,优选的,通过使用netty,客户端每一个任务的结果状态组装成日志对象序列化udp协议的方式传输到服务端完成对接入方任务的全链路监控能力。
17.本实施例中,优选的,所述的日志分析,通过客户端传输过来的日志信息,对接flink对业务数据做实时和离线数据分析。
18.本实施例中,优选的,所述线程池监控报警,通过客户端和服务端的长连接通道,可对任务管理框架实现线程池监控、报警、管理。
19.尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。


技术特征:
1.基于有向无环图的任务编排调度系统,其特征在于:包括任务触发器、流程解析引擎、任务启动器、任务加载器、任务执行器、任务总线;任务触发器,任务流的启动者,负责启动任务执行流;规则解析引擎,负责解析使用者配置的规则,与spring结合,将结构化的二进制数据解析成taskbean,然后通过解析引擎加载为任务装饰器,进而组装成任务图;任务启动器,负责通过使用解析引擎解析的任务图;结合juc并发框架调度实现对任务的统一管理,并加载任务准备环境;任务加载器,负责加载任务流程,开始调用任务执行器执行核心流程;任务执行器,最终的任务执行,每一个任务对应一个processexecutor,处理任务的拦截、异常、执行、复用必要条件的判断;任务总线,任务流程传递总线,包括请求参数、任务加载器、响应结果,该对象暴露给使用者,拿到匹配业务的数据信息。2.根据权利要求1所述的基于有向无环图的任务编排调度系统,其特征在于:所述任务总线还可以在系统基础拓展全链路监控、日志分析、线程池监控报警功能。3.根据权利要求1所述的基于有向无环图的任务编排调度系统,其特征在于:所述任务触发器通过quartz作业调度框架进行普通或定时任务配置,任务调度控制器scheduler中注册调度程序jobdetail与触发器trigger,调度任务元数据job,提供调度功能。4.根据权利要求2所述的基于有向无环图的任务编排调度系统,其特征在于:通过使用netty,客户端每一个任务的结果状态组装成日志对象序列化udp协议的方式传输到服务端完成对接入方任务的全链路监控能力。5.根据权利要求2所述的基于有向无环图的任务编排调度系统,其特征在于:所述的日志分析,通过客户端传输过来的日志信息,对接flink对业务数据做实时和离线数据分析。6.根据权利要求1所述的基于有向无环图的任务编排调度系统,其特征在于:所述线程池监控报警,通过客户端和服务端的长连接通道,可对任务管理框架实现线程池监控、报警、管理。

技术总结
本发明公开了基于有向无环图的任务编排调度系统,包括任务触发器、流程解析引擎、任务启动器、任务加载器、任务执行器、任务总线;任务触发器,任务流的启动者,负责启动任务执行流;规则解析引擎,负责解析使用者配置的规则,本发明能够解除依赖超时风险;在上游某个任务超时,不会因为等待该任务而导致其他的任务无法执行带来的请求保持问题,提高服务器CPU使用效率;能够节省开发成本;性能提升;释放主线程的请求等待问题,在上游接口请求耗时越不均匀,中台接口请求越复杂时,能体现本技术的性能优势;能够提高效率;适用于海量数据的复杂业务场景,可以更好的匹配复杂的业务场景,让整个任务编排根据业务可以实现模块化管理。整个任务编排根据业务可以实现模块化管理。整个任务编排根据业务可以实现模块化管理。


技术研发人员:陈云朋 李飞 王海燕 韩建辉 高江龙 程浩然 李然 刘昱
受保护的技术使用者:河钢数字技术股份有限公司
技术研发日:2022.10.23
技术公布日:2023/1/31
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1