來(lái)源:https://my.oschina.net/editorial-story/blog/883856
分布式調(diào)度在互聯(lián)網(wǎng)企業(yè)中占據(jù)著十分重要的作用雕什,尤其是電子商務(wù)領(lǐng)域诊笤,由于存在數(shù)據(jù)量大、高并發(fā)的特點(diǎn)贩挣,對(duì)數(shù)據(jù)處理的要求較高狡蝶,既要保證高效性,也要保證準(zhǔn)確性和安全性夷恍,相對(duì)比較耗時(shí)的業(yè)務(wù)邏輯往往會(huì)從中剝離開(kāi)來(lái)進(jìn)行異步處理。
開(kāi)源中國(guó)任務(wù)調(diào)度系統(tǒng)/框架類別下有非常多的開(kāi)源項(xiàng)目媳维,其中不乏出自國(guó)內(nèi)外知名企業(yè)的優(yōu)秀大作酿雪。與此同時(shí)遏暴,還有新的同類項(xiàng)目在不斷增加。接下來(lái)指黎,推薦幾款優(yōu)秀和極具潛力的國(guó)產(chǎn)開(kāi)源分布式任務(wù)調(diào)度系統(tǒng)港庄,希望能對(duì)大家有所幫助绞铃。
opencron 是一個(gè)功能完善且通用的開(kāi)源定時(shí)任務(wù)調(diào)度系統(tǒng)凳宙,擁有先進(jìn)可靠的自動(dòng)化任務(wù)管理調(diào)度功能当叭,提供可操作的 web 圖形化管理滿足多種場(chǎng)景下各種復(fù)雜的定時(shí)任務(wù)調(diào)度茬故,同時(shí)集成了 linux 實(shí)時(shí)監(jiān)控、webssh 等功能特性蚁鳖。
LTS,light-task-scheduler醉箕,是一款分布式任務(wù)調(diào)度框架,?支持實(shí)時(shí)任務(wù)钾腺、定時(shí)任務(wù)和 Cron 任務(wù)。有較好的伸縮性和擴(kuò)展性讥裤,提供對(duì) Spring 的支持(包括 Xml 和注解)放棒,提供業(yè)務(wù)日志記錄器。支持節(jié)點(diǎn)監(jiān)控己英、任務(wù)執(zhí)行監(jiān)间螟、JVM 監(jiān)控,支持動(dòng)態(tài)提交损肛、更改厢破、停止任務(wù)。
XXL-JOB 是一個(gè)輕量級(jí)分布式任務(wù)調(diào)度框架摩泪,支持通過(guò) Web 頁(yè)面對(duì)任務(wù)進(jìn)行 CRUD 操作,支持動(dòng)態(tài)修改任務(wù)狀態(tài)劫谅、暫停/恢復(fù)任務(wù)见坑,以及終止運(yùn)行中任務(wù),支持在線配置調(diào)度任務(wù)入?yún)⒑驮诰€查看調(diào)度結(jié)果捏检。
Elastic-Job 是一個(gè)分布式調(diào)度解決方案,由兩個(gè)相互獨(dú)立的子項(xiàng)目 Elastic-Job-Lite 和 Elastic-Job-Cloud 組成未檩。定位為輕量級(jí)無(wú)中心化解決方案戴尸,使用 jar 包的形式提供分布式任務(wù)的協(xié)調(diào)服務(wù)。支持分布式調(diào)度協(xié)調(diào)冤狡、彈性擴(kuò)容縮容孙蒙、失效轉(zhuǎn)移项棠、錯(cuò)過(guò)執(zhí)行作業(yè)重觸發(fā)、并行調(diào)度挎峦、自診斷和修復(fù)等等功能特性香追。
Uncode-Schedule?是基于ZooKeeper+Quartz/ spring task 的分布式任務(wù)調(diào)度組件坦胶,確保每個(gè)任務(wù)在集群中不同節(jié)點(diǎn)上不重復(fù)的執(zhí)行透典。支持動(dòng)態(tài)添加和刪除任務(wù),支持添加 ip 黑名單顿苇,過(guò)濾不需要執(zhí)行任務(wù)的節(jié)點(diǎn)峭咒。
Antares?是一款基于Quartz機(jī)制的分布式任務(wù)調(diào)度管理平臺(tái)纪岁,內(nèi)部重寫執(zhí)行邏輯凑队,一個(gè)任務(wù)僅會(huì)被服務(wù)器集群中的某個(gè)節(jié)點(diǎn)調(diào)度。用戶可通過(guò)對(duì)任務(wù)預(yù)分片幔翰,有效提升任務(wù)執(zhí)行效率漩氨;也可通過(guò)控制臺(tái) antares-tower 對(duì)任務(wù)進(jìn)行基本操作,如觸發(fā)遗增,暫停叫惊,監(jiān)控等。