這些NB哄哄的分佈式任務調度系統,你用過幾個?


這些NB哄哄的分佈式任務調度系統,你用過幾個?


今天在開源中國“任務調度系統/框架”網頁上找了好幾款比較不錯的分佈式任務調度系統,地址如下:

https://www.oschina.net/project/tag/327/task-schedule

這些NB哄哄的分佈式任務調度系統,你用過幾個?


類別下有非常多的開源項目,其中不乏出自國內外知名企業的優秀大作。接下來,推薦幾款優秀和極具潛力的國產開源分佈式任務調度系統,希望能對大家有所幫助,讓大家瞭解一下分佈式調度系統!

另外,開源中國包括碼雲是一個很不錯的開源項目學習的平臺,不僅是國外的還是國內的都有很多不錯的開源項目可供我們學習,建議大家經常逛一逛!

分佈式調度系統的重要性

分佈式調度在互聯網企業中佔據著十分重要的作用,尤其是電子商務領域,由於存在數據量大、高併發的特點,對數據處理的要求較高,既要保證高效性,也要保證準確性和安全性,相對比較耗時的業務邏輯往往會從中剝離開來進行異步處理。

1、opencron

https://gitee.com/benjobs/opencron

opencron 是一個功能完善且通用的開源定時任務調度系統,擁有先進可靠的自動化任務管理調度功能,提供可操作的 web 圖形化管理滿足多種場景下各種複雜的定時任務調度,同時集成了 linux 實時監控、webssh 等功能特性。

你是否有定時執行任務計劃的需求,需要在linux的crontab裡一一定義任務?

  • 需要在每臺linux服務器的crontab裡一一定義任務;
  • 任務的執行監控太不方便了;
  • 得登錄到每臺機器查看定時任務的運行結果,機器一多簡直是一種災難;
  • 對於多臺機器協同處理一個任務很麻煩,如何保證多臺機器上的任務按順序依次執行?
  • 當任務運行失敗,要重新執行,還得重新定義下執行時間,讓其重跑,重跑完成了還得改回正常時間;
  • 正在運行的任務要kill掉很麻煩,查看進程然後才能kill ......
這些NB哄哄的分佈式任務調度系統,你用過幾個?

2、LTS

https://gitee.com/hugui/light-task-scheduler

LTS,light-task-scheduler,是一款分佈式任務調度框架, 支持實時任務、定時任務和 Cron 任務。有較好的伸縮性和擴展性,提供對 Spring 的支持(包括 Xml 和註解),提供業務日誌記錄器。支持節點監控、任務執行監、JVM 監控,支持動態提交、更改、停止任務。

完整的示例代碼:

https://github.com/ltsopensource/lts-examples


這些NB哄哄的分佈式任務調度系統,你用過幾個?

3、XXL-JOB

https://gitee.com/xuxueli0323/xxl-job

http://www.xuxueli.com/xxl-job

這些NB哄哄的分佈式任務調度系統,你用過幾個?

XXL-JOB 是一個輕量級分佈式任務調度框架,支持通過 Web 頁面對任務進行 CRUD 操作,支持動態修改任務狀態、暫停/恢復任務,以及終止運行中任務,支持在線配置調度任務入參和在線查看調度結果。

這些NB哄哄的分佈式任務調度系統,你用過幾個?

4、Elastic-Job

https://gitee.com/elasticjob/elastic-job

Elastic-Job 是一個分佈式調度解決方案,由兩個相互獨立的子項目 Elastic-Job-Lite 和 Elastic-Job-Cloud 組成。定位為輕量級無中心化解決方案,使用 jar 包的形式提供分佈式任務的協調服務。支持分佈式調度協調、彈性擴容縮容、失效轉移、錯過執行作業重觸發、並行調度、自診斷和修復等等功能特性。

這些NB哄哄的分佈式任務調度系統,你用過幾個?

5、Uncode-Schedule

https://gitee.com/uncode/uncode-schedule

Uncode-Schedule 是基於 ZooKeeper + Quartz / spring task 的分佈式任務調度組件,確保每個任務在集群中不同節點上不重複的執行。支持動態添加和刪除任務,支持添加 ip 黑名單,過濾不需要執行任務的節點。

功能概述:

  • 基於zookeeper+spring task/quartz/uncode task的分佈任務調度系統。
  • 確保每個任務在集群中不同節點上不重複的執行。
  • 單個任務節點故障時自動轉移到其他任務節點繼續執行。
  • 任務節點啟動時必須保證zookeeper可用,任務節點運行期zookeeper集群不可用時任務節點保持可用前狀態運行,zookeeper集群恢復正常運期。
  • 支持動態添加、修改和刪除任務,支持任務暫停和重新啟動。
  • 添加ip黑名單,過濾不需要執行任務的節點。
  • 後臺管理和任務執行監控。
  • 支持spring-boot,支持單個任務運行多個實例(使用擴展後綴)。

模塊機構:

這些NB哄哄的分佈式任務調度系統,你用過幾個?

6、Antares

https://github.com/ihaolin/antares

Antares 是一款基於 Quartz 機制的分佈式任務調度管理平臺,內部重寫執行邏輯,一個任務僅會被服務器集群中的某個節點調度。用戶可通過對任務預分片,有效提升任務執行效率;也可通過控制檯 antares-tower 對任務進行基本操作,如觸發,暫停,監控等。

Antares整體架構:

這些NB哄哄的分佈式任務調度系統,你用過幾個?

這些NB哄哄的分佈式任務調度系統,你用過幾個?

小結:說句實話到現在沒把這6個全部使用,使用其中的幾個吧!比較在不同的公司待過公司的技術選型還是不一樣的!我自己算是開了眼界了,原來自己才是井底之蛙!!


分享到:


相關文章: