基于SSM的作业调度平台
- 支持时间调度、作业依赖触发、手工执行三种调度方式。
- 时间调度:底层基于quartz实现,支持cron命令,实现灵活的时间调度方式。
- 作业依赖触发:一个子作业可以依赖多个父作业,一个父作业可以有多个子作业,系统同时做死循环判断,避免作业依赖形成环。
- 手工执行:对任何作业都可以手动触发一次。
- 调度系统自身并不承担业务逻辑,通过ssh 协议执行远程机器的命令,支持hive、spark、kettle、python、shell等脚本的执行。
- 本系统实现了邮件告警功能,当作业失败时,第一责任人(创建人)和第二责任人是直接收件人。第三之后的责任人是抄送。在“用户管理”中配置用户邮箱地址。
- 带有一个名为dt的日期变量(yyyyMMdd格式),可以在“执行命令”中使用${dt}。如“echo ${dt}”。dt的值默认为昨天。所以本系统特别适合用于etl按天增量同步数据的作业的调度。
- 对于作业有个“自依赖”的选项,自依赖约束该作业在当天dt能够执行,要求前一天dt已经成功执行。
- 可以部署在windows 或者linux 服务器。
运行环境 :
jdk1.8、spring、springmvc、mybatis、quartz、mysql
开发环境
- 开发工具:eclipse,lombok,maven、tomcat 7,mysql5.5+
- lombok 的主要作用是通过注解减少setter 和getter方法的生成,保持代码简洁。eclipse 务必要先安装lombok插件
默认账号 admin/test
具体功能这里不再赘述,请下方看系统详细演示图,如果大家有什么疑问或者什么不懂得可以在下方给我留言,或者你有更好的建议等等都可以的,也可以找我和我一起交流沟通,互相学习进步!但是dai。ma。you。chang
好了下面让我来给大家展示一下这个项目的页面效果:
————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
转载于:https://blog.51cto.com/12363791/2384449