無論是自研調度工具,還是技術選型,都需要實先確定自己的業務需求,今兒根據具體的業務需求進行相關的研究與開發工作。
主要是個人記錄日常事物,讀者僅供參考。
一、調度工具目標
1、支持依賴配置:任務間依賴
2、支持定時任務與臨時任務,靈活配置與啓動停止
3、支持分佈式運行任務
4、支持觸發式運行任務:存在依賴的任務,上游任務運行結束,可以觸發下游任務的運行
5、軟件要求:
A、穩定性
B、易用性
C、任務支持配置管理
D、儘量支持WEB任務狀態管理【查看、更新、運行、結束等】等操作
E、任務管理【上傳任務文件、生成任務、添加依賴、刪除任務等】等操作
F、支持配置管理【配置運行參數、運行日期、手動運行等】等操作
G、支持線程數管理【同時併發數據、JVM配置、垃圾回收器等JAVA啓動配置】
H、負載均衡
二、可選軟件
1、Azkaban
2、Oozie
3、Airflow
4、Github任務調度參考: