Quartz是一个开源的Java作业调度框架,它提供了强大的定时任务调度功能。在DolphinScheduler中,Quartz用于实现定时任务的调度和管理。DolphinScheduler通过QuartzExecutorImpl类与Quartz集成,将工作流及其定时管理操作与Quartz调度框架相结合,实现任务的调度执行。
本文将详细剖析Quartz的原理机制,以及在Dolphinscheduler中使用Quartz的原理。
Quartz ER图

QRTZ_JOB_DETAILS和QRTZ_TRIGGERS是中心表,定义了任务与触发器之间的关系;QRTZ_TRIGGERS表通过外键关联了多个触发器类型表,如QRTZ_SIMPLE_TRIGGERS和QRTZ_CRON_TRIGGERS,用于实现不同类型的触发方式;QRTZ_FIRED_TRIGGERS用于记录每次任务执行的历史,与任务和触发器表都有关联;QRTZ_CALENDARS用于定义触发器的日历排除规则,QRTZ_PAUSED_TRIGGER_GRPS 用于管理触发器组的暂停状态;QRTZ_SCHEDULER_STATE和QRTZ_LOCKS主要用于集群环境中的任务调度协调,确保高可用性。
Dolphinscheduler Quartz使用
新建SHELL任务

流程定义上线并配置调度


最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



