调度框架之海豚调度

 

 海豚调度 个人简单理解:是api 提供执行调度脚本的接口,比如发布一个调度脚本任务,首先会将调度的command 持久化到db中;masterServer会不断扫描扫描表t_ds_command中的命令将其和masterAddress封装成processInstance转化成WorkflowExecuteRunnable

,放入到processInstanceExecCacheManager中,然后masterSchedulerBootstrap下的workflowEventLooper会将从processInstanceExecCacheManager获取到WorkflowExecuteRunnable 进行DAG split 转化成task 放入到TaskPriorityQueue; 然后 TaskConsumer从TaskPriorityQueue中拉取TaskPriority分发task,将task封装成ExecutionContext 然后用NettyExecutorManager将command发送到worker来执行任务。

模块描述
dolphinscheduler-alert 告警模块,提供 AlertServer 服务。
dolphinscheduler-api web应用模块,提供 ApiServer 服务。
dolphinscheduler-common 通用的常量枚举、工具类、数据结构或者基类
dolphinscheduler-dao 提供数据库访问等操作。
dolphinscheduler-remote 基于 netty 的客户端、服务端
dolphinscheduler-server MasterServer 和 WorkerServer 服务
dolphinscheduler-service service模块,包含Quartz、Zookeeper、日志客户端访问服务,便于server模块和api模块调用
dolphinscheduler-ui 前端模块
posted @ 2022-10-12 21:43  清茗一盏  阅读(2665)  评论(0)    收藏  举报