點擊上方"java全棧技術"關注,每天學習一個java知識點
簡介
Elastic-Job是一個分佈式調度解決方案,由兩個相互獨立的子項目Elastic-Job-Lite和Elastic-Job-Cloud組成。
Elastic-Job-Lite定位為輕量級無中心化解決方案,使用jar包的形式提供分佈式任務的協調服務。
功能列表
1、任務分片
- 將整體任務拆解為多個子任務
- 可通過服務器的增減彈性伸縮任務處理能力
- 分佈式協調,任務服務器上下線的全自動發現與處理
2、 多任務類型
- 基於時間驅動的任務
- 基於數據驅動的任務(TBD)
- 同時支持常駐任務和瞬時任務
- 多語言任務支持
3、雲原生
- 完美結合Mesos或Kubernetes等調度平臺
- 任務不依賴於IP、磁盤、數據等有狀態組件
- 合理的資源調度,基於Netflix的Fenzo進行資源分配
4、容錯性
- 支持定時自我故障檢測與自動修復
- 分佈式任務分片唯一性保證
- 支持失效轉移和錯過任務重觸發
5、任務聚合
- 相同任務聚合至相同的執行器統一處理
- 節省系統資源與初始化開銷
- 動態調配追加資源至新分配的任務
6、易用性
- 完善的運維平臺
- 提供任務執行歷史數據追蹤能力
- 註冊中心數據一鍵dump用於備份與調試問題
整體架構圖
Elastic-Job-Lite
![「每日分享」ElasticJob—分佈式作業調度神器,你還在用Quartz嗎](http://p2.ttnews.xyz/loading.gif)
Elastic-Job-Cloud
![「每日分享」ElasticJob—分佈式作業調度神器,你還在用Quartz嗎](http://p2.ttnews.xyz/loading.gif)
轉自Java技術棧
閱讀更多 java全棧技術 的文章