HelloJob基于 J2EE 的調(diào)度系統(tǒng)
hello job 是使用j2ee技術(shù)開發(fā)的調(diào)度系統(tǒng),提供交互簡單的中文操作界面,40秒上手。目前業(yè)界有不少調(diào)度系統(tǒng),比如oozie(太難用)、xxl-job(太重量)、airflow(python寫的,依賴linux的crontab,只能夠部署在linux), hello job致力于打造一個(gè)輕量級的、簡單好用的跨平臺(tái)調(diào)度系統(tǒng),希望可以成為調(diào)度界的一股清流。
hello job特征:
-
支持時(shí)間調(diào)度、作業(yè)依賴觸發(fā)、手工執(zhí)行三種調(diào)度方式。
-
時(shí)間調(diào)度:底層基于quartz實(shí)現(xiàn),支持cron命令,實(shí)現(xiàn)靈活的時(shí)間調(diào)度方式。
-
作業(yè)依賴觸發(fā):一個(gè)子作業(yè)可以依賴多個(gè)父作業(yè),一個(gè)父作業(yè)可以有多個(gè)子作業(yè),系統(tǒng)同時(shí)做死循環(huán)判斷,避免作業(yè)依賴形成環(huán)。
-
手工執(zhí)行:對任何作業(yè)都可以手動(dòng)觸發(fā)一次。
-
調(diào)度系統(tǒng)自身并不承擔(dān)業(yè)務(wù)邏輯,通過ssh 協(xié)議執(zhí)行遠(yuǎn)程機(jī)器的命令,支持hive、spark、kettle、python、shell等腳本的執(zhí)行。
-
實(shí)現(xiàn)了郵件告警功能,配置作業(yè)的收件人郵箱,當(dāng)作業(yè)執(zhí)行失敗會(huì)發(fā)報(bào)錯(cuò)信息到該郵箱。
-
帶有一個(gè)名為dt的日期變量(yyyyMMdd格式),可以在“執(zhí)行命令”中使用dt。如“echodt。如“echo{dt}”。dt的值默認(rèn)為昨天。所以本系統(tǒng)特別適合用于etl按天增量同步數(shù)據(jù)的作業(yè)的調(diào)度。
-
對于作業(yè)有個(gè)“自依賴”的選項(xiàng),自依賴約束該作業(yè)在當(dāng)天dt能夠執(zhí)行,要求前一天dt已經(jīng)成功執(zhí)行。
-
可以部署在windows 或者linux 服務(wù)器。
