ZDH-调度服务

目录

主题

项目源码

预览地址

安装包下载地址

调度服务

调度可视化

调度器管理

调度时间控制

调度告警服务

调度优先级

总结

感谢支持


主题

本篇文章主要介绍ZDH-调度服务及应用场景,当前介绍版本为5.6.2,当前版本重构了调度时间机制,简化了流程,方便理解

项目源码

zdh_web: GitHub - zhaoyachao/zdh_web: 大数据采集,抽取平台

预览地址

后台管理-登陆

java 复制代码
用户名:zyc
密码:123456

安装包下载地址

需要用户下载源码自行编译,源码见上方项目源码

调度服务

调度服务是zdh平台比较核心重要的模块,截止到5.6.1版本,调度模块重构了多次,目前调度服务主要包含3个方向,数据ETL任务调度,智能营销模块策略调度,烽火台告警模块监控调度,调度服务基于开源的quartz框架,采用mysql做存储,实现分布式调度,并在此基础上实现调度可视化,指定调度机,任务依赖级别等高级功能,当前调度不是一个通用的调度,是为zdh平台定制化的调度平台,因此和zdh平台高度适配

调度可视化

调度可视化是指用户可通过拖拉拽方式实现调度任务的编排,并提供多种调度任务类型,支持配置告警,自动化调度,指定调度机执行等功能,如下图

调度器管理

调度器是调度模块的执行引擎,目前在quartz基础上,增加了调度器可视化管理,调度上线/下线等功能,管理员可方便进行调度器的管理,如下图

调度时间控制

当前调度模块中有以下时间相关名词

表达式:调度目前支持2种表达式,一种是业内常用的cron 表达式,一种是zdh实现的傻瓜式表达式,cron 表达式可自行百度等, zdh内置的表达式 如下,支持秒,分钟,天 3种时间单位,比如1s 表示1秒,100m 表示100分钟,5d表示 5天,这个表达式比较简单,表示每x秒/分/天 执行一次

调度时间策略 :可选择 【使用调度触发时间】, 勾选后,调度中的时间参数 以逻辑触发时间为基准做运算(如果调度因特殊原因延迟触发,这里的调度触发时间,还是逻辑触发时间,举例:一个任务定义每小时10分执行,某天系统故障等原因导致 任务在每小时 20分执行,这里运算的时间 还是每小时10分)

回退时间差:当选择【使用调度触发时间】时,此配置有效,基准时间=调度触发时间-时差

起始日期:调度生效的时间范围,在5.6.2版本之前,这个起始日期仅对 【不使用调度触发时间】任务有效, 5.6.2 版本及之后 不区分调度时间策略,都生效

执行模式:可选择 顺时间执行, 执行一次,2种模式,多数场景都使用 顺时间执行,执行一次是顺时间执行的特殊行为

步长:当选择【不使用调度触发时间】时,此配置生效,选择步长之后, 基准时间=起始日期/上次执行日期 + 步长(秒/分钟/天)

恢复策略:系统异常时,默认不恢复,可选择错过的所有历史任务,或者执行最近一次任务

调度告警服务

调度告警目前实现较为简单,可选择失败,完成,超时 告警, 告警的渠道可以选择 邮箱,ZDH内部通知,短信(短信需要阿里云账号)

调度优先级

调度优先级根据自定义数字实现, 数字越大,优先级越高,实现原理,就是按优先级排序进行任务发现

总结

调度模块是zdh平台重要的一部分,基于quartz框架实现分布式调度,并在此基础上增加了可视化功能,指定调度机执行,异常恢复等高级功能, ETL任务调度,营销策略调度等 都是基于调度模块实现

感谢支持

如果觉得项目有意思可以在github上给个星星和fork, 也可以分享给朋友, zdh_web:GitHub - zhaoyachao/zdh_web: 大数据采集,抽取平台

相关推荐
亚林瓜子7 小时前
AWS中国云中的ETL之从aurora搬数据到s3(Glue版)
hadoop·spark·云计算·etl·aws
Hello.Reader3 天前
用 Flink DataStream API 搭建流式 ETL从无状态到有状态、从单流到连接流
flink·etl·原型模式
北冥SP3 天前
etl介绍
数据仓库·etl
孟意昶5 天前
Spark专题-第二部分:Spark SQL 入门(4)-算子介绍-Exchange
大数据·数据仓库·sql·spark·etl
chat2tomorrow20 天前
数据采集平台的起源与演进:从ETL到数据复制
大数据·数据库·数据仓库·mysql·低代码·postgresql·etl
TDengine (老段)22 天前
从 ETL 到 Agentic AI:工业数据管理变革与 TDengine IDMP 的治理之道
数据库·数据仓库·人工智能·物联网·时序数据库·etl·tdengine