本文主要介紹MSE XXL-JOB版與XXL-JOB社區版的對比。
功能集 | 功能 | 開源 XXL-JOB | 阿里雲XXL-JOB版 |
相容性 | 協議相容 | 不同版本間不相容 | 相容所有版本 |
基礎能力 | 調度類型 | cron、fixed_rate | cron、fixed_rate、fixed_delay、one_time、api |
時區 | 不支援 | 支援 | |
自訂日曆 | 不支援 | 支援 | |
指定開始時間 | 不支援 | 支援 | |
廣播分區 | 不支援彙總 | 支援彙總 | |
營運動作 | 手動運行、停止 | 手動運行、停止、原地重跑、補資料、標記成功、掛起/取消掛起、跳過/取消跳過。 | |
任務依賴編排 | 子任務,僅支援串列 | 可視化工作流程編排,支援條件分支、外部依賴、人工節點、自訂變數、上下遊資料傳遞、營運操作等。 | |
優雅下線 | 不支援,用戶端停止的時候,會強制調用線程中斷 | 支援 | |
任務灰階 | 不支援 | 支援基於標籤的路由調度能力,整合MSE微服務治理後,可實現動態打標與全鏈路灰階發布 | |
可觀測能力 | 調度事件 | 不支援 | 支援 |
監控大盤 | 僅支援按天層級查看 | 支援按分鐘、小時、天層級查看 | |
操作記錄 | 不支援 | 支援 | |
日誌 | 儲存在用戶端,每次執行產生一個小檔案,存在效能和穩定性問題 | 使用者使用SLS自行採集記錄檔 | |
警示監控 | 警示方式 | 郵件 | 郵件、webhook、簡訊、電話 |
警示連絡人 | 不支援 | 整合CloudMonitor連絡人 | |
警示歷史 | 不支援 | 支援 | |
穩定性 | 任務並發控制 | 用戶端控制,多個執行器無法做到等冪執行 | 服務端控制,可以做到全域等冪執行 |
應用限流 | 不支援 | 支援 | |
拖垮資料庫可能性 | 每次調度均在資料庫中保留歷史執行記錄,預設保留最近30天資料,導致xxl_job_log表資料量快速增長,嚴重影響資料庫效能,進而影響任務調度 | 採用儲存與計算分離架構及冷熱資料階層式存放區技術,將任務近期執行記錄保留在資料庫中、長期記錄歸檔至Log Service,有效解決開源XXL-JOB的記錄儲存瓶頸問題 | |
任務漏發可能性 | 每次調度都需要通過資料庫擷取要調度的執行計畫,如果擷取逾時,將導致任務漏觸發 | 採用分布式架構,各Server節點在記憶體中獨立調度分配的定時任務,顯著降低資料庫負載,並大幅減少任務漏觸發的機率 | |
安全 | 控制台登入 | 使用者名稱密碼登入 | 阿里雲帳號、RAM帳號、角色帳號、SSO單點登入 |
細粒度許可權控制 | 不支援 | 使用RAM權限原則,支援執行個體、應用層級許可權隔離,支援各種操作層級許可權管理 | |
SDK接入鑒權 | 整個叢集共用一個accessToken | 不同的AppName使用不同的AccessToken |