🔥🔥🔥 灵活,可靠和快速的分布式任务重试和分布式任务调度平台
一文读懂 AizuDa/EasyRetry
> ✅️ 可重放,可管控、为提高分布式业务系统一致性的分布式任务重试平台
> ✅️ 支持秒级、可中断、可编排的高性能分布式任务调度平台
📢特别声明
为了促进系统的更好发展,我们正式宣布自本版本起,EasyRetry将更名为SnailJob,并从版本号1.0.0开始,请大家尽快迁移至SnailJob。由于包路径和表结构的调整,新版本将不再兼容之前的EasyRetry版本, EasyRetry版本会继续做BUG修复。对此给大家带来的不便,我们深表歉意,并感谢大家的理解与支持。
开源组件对比
| 项目 |
Quartz |
Elastic-Job |
XXL-JOB |
SnailJob |
| 定时调度 |
Cron |
Cron |
Cron |
1. 定时任务 2. 秒级任务 (无需依赖外部中间件) 3. 固定频率 |
| 重试任务 |
不支持 |
不支持 |
不支持 |
1. 支持本地 & 远程重试模式 2. 支持各种常用组件的重试 比如 dubbo/feign 3. 支持多种退避策略 4. 丰富的重试风暴管控手段 ...... |
| 任务编排 |
不支持 |
不支持 |
不支持 |
可视化任务编排 |
| 分布式计算 |
不支持 |
静态分片 |
广播 |
1. 广播执行 2. 集群执行 3. 静态分片 |
| 多语言 |
Java |
1. Java 2. 脚本任务 |
1. Java 2. 脚本任务 |
1. Java 2. 脚本任务 3. HTTP 任务 4. Kettle |
| 可视化 |
无 |
弱 |
1. 历史记录 2. 运行日志(不支持存储)3. 监控大盘 |
1. 历史记录 2. 运行日志 (支持持久化) 3. 监控大盘 4. 操作记录 5. 查看日志堆栈 |
| 可运维 |
无 |
启用、禁用任务 |
1. 启用、禁用任务 2. 手动运行任务 3. 停止任务 |
1. 启用、禁用任务 2. 手动运行任务 3. 停止任务 |
| 报警监控 |
无 |
邮件 |
邮件 |
1. 邮件 2. 钉钉 3. 企微 4. 飞书 |
| 性能 |
每次调度通过 DB 抢锁,对 DB 压力大 |
ZooKeeper 是性能瓶颈 |
采用 Master 节点调度,Master 节点压力大 |
系统采用多 bucket 模式,借助负载均衡算法,确保每个节点能够均衡处理任务,同时支持无限水平扩展,轻松应对海量任务调度 |
| 接入成本 |
只依赖 DB 接入成本低 |
需引入 Zookeeper 增加系统复杂性和维护成本 |
只依赖 DB 接入成本低 |
只依赖 DB 接入成本低 |
项目地址
一文读懂 AizuDa/EasyRetry
一文读懂 AiZuDa/EasyRetry 重试组件的意义
官网: https://snailjob.opensnail.com/
gitee: https://gitee.com/aizuda/snail-job
github:https://github.com/aizuda/snail-job
体验地址: http://preview.easyretry.com/
方便的话给项目一个 star,你的支持是我们前进的动力!
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()