【技术实现步骤摘要】
一种松耦合的分布式工作流协调系统和方法
[0001]本专利技术涉及大数据开发处理
,具体来说,涉及一种松耦合的分布式工作流协调系统和方法。
技术介绍
[0002]在数据开发项目中,通常需要制定若干工作流(以任务为节点,满足依赖关系的DAG),每个工作流按照相应的定时(Cron表达式),进行周期性的执行;此类业务通常通过工作流调度系统来实现。
[0003]传统工作流调度系统通常由:API接口服务、Manager工作流管理器、Worker任务执行器、RDBMS数据存储。
[0004]API接口服务:负责工作流及其任务的创建、定时的创建以及工作流定时的上线;
[0005]Manager管理器:负责工作流的定时执行、工作流DAG转任务线性队列、任务队列执行上下文管理、任务派发给对应的worker、任务执行结果回调监听、任务状态判断和后续任务派发;
[0006]Worker任务处理器:负责各类业务型任务的执行。
[0007]RDBMS数据库存储:负责工作流元数据存储、工作流派发队列; />[0008]传统本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种松耦合的分布式工作流协调系统,其特征在于,该系统包括:接口服务API,分布式工作流协调器Coordinator,分布式任务执行器Worker,高可用缓存Cache,分布式消息队列MQ,数据库RDBMS和分布式协调服务Zookeeper。所述接口服务API通过Zookeeper来监控分布式工作流协调器Coordinator和分布式任务执行器Worker的服务情况;所述分布式消息队列MQ包括工作流派发分布式消息队列MQ(workflow
‑
MQ)、任务派发分布式消息队列MQ(task
‑
dispatch
‑
WorkerGroup
‑
MQ)和任务回调分布式消息队列MQ(task
‑
callback
‑
MQ);所述分布式工作流协调器Coordinator执行以下功能:集成分布式定时引擎Quartz,定时调度工作流并发送到workflow
‑
MQ;从workflow
‑
MQ接收工作流进行处理;处理工作流到任务队列的DAG拓扑和优先级排序;将工作流实例及其任务实例的创建、状态更新的数据持久化保存到数据库;将工作流及其任务队列的上下文缓存到高可用缓存redis中;业务类型任务通过task
‑
dispatch
‑
WorkerGroup
‑
MQ派发到分布式任务执行器Worker,逻辑型任务直接在协调器Coordinator上执行;任务实例执行结果通过task
‑
callback
‑
MQ获取;评估自身主机内存、计算资源和线程池的使用率从而合理接收工作流;所述分布式任务执行器Worker负责各业务型任务的接收、执行、回调;评估自身主机内存、计算资源和线程池的使用率从而合理接收任务。2.根据权利要求1所述的一种松耦合的分布式工作流协调系统,其特征在于,所述接口服务API实现如下功能:工作流及其任务的定义创建、定时创建;工作流定时的上线;工作流手动运行、补数;工作流实例的重跑、暂停、停止等控制。3.根据权利要求1所述的一种松耦合的分布式工作流协调系统,其特征在于,所述分布式工作流协调器Coordinator和分布式任务执行器Wo...
【专利技术属性】
技术研发人员:刘媛媛,陈廷梁,
申请(专利权)人:浙江数新网络有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。