SnailJob
灵活、可靠、高效的分布式任务调度与重试平台
平台亮点
- 🚀 高性能:分区分桶架构,支持海量任务调度
- 🛡️ 高可靠:完善的重试机制,确保任务执行可靠性
- 🔄 易扩展:支持水平扩展,轻松应对业务增长
- 🎨 易使用:现代化UI设计,简单直观的操作体验
快速开始
观看视频教程
扫码关注官方账号,获取平台最新视频讲解与实操演示。

抖音号

B站
核心能力
分布式重试
- 多模式:本地、远程、混合重试
- 多策略:指数退避、固定间隔、CRON、最大重试次数
- 异常处理:支持异常白名单/黑名单、自动降级
- 死信队列:失败任务自动转入,支持手动回滚
- 重试风暴防护:跨服务流量管控、单机重试管控、后台数据管控
- 多渠道通知:飞书、钉钉、企业微信、邮件、Webhook
- 重试完成回调:支持自定义回调处理
- 幂等ID:支持业务幂等ID配置,防止重复执行
任务调度
- 多样调度:CRON、秒级、固定频率
- 执行模式:集群、广播、静态、Map、MapReduce
- 路由策略:轮询、LRU、随机、一致性哈希、第一个、最后一个
- 阻塞策略:丢弃、覆盖、并行、恢复
- 实时监控:任务状态、执行日志、失败告警
- 任务生命周期:暂停、恢复、终止、手动触发
- 多任务类型:HTTP、Shell、CMD、PowerShell
- API调度:支持OpenAPI远程触发
工作流编排
- 可视化流程:仿钉钉工作流编排,所见即所得
- 多节点类型:任务节点、决策节点
- 流程监控:实时查看流程进度与日志
- 阻塞策略:丢弃、覆盖、并行、恢复
- 上下文:支持全流程工作流上下文传递
- 多样调度:CRON、固定频率
- 决策表达式:Spel、Aviator、QL等
- 超时管理:支持按需配置执行的超时时间
系统特性
- 高可用:分区分桶架构,支持无限水平扩展
- 安全权限:多层级权限、租户隔离、操作审计
- 多语言支持:Java、Python、Go 原生客户端
- 低接入成本:仅依赖数据库,易集成、易维护
- 现代UI:可视化管理、实时监控、失败排名
- 丰富API:开放API,便于系统集成与自动化
- 社区活跃:文档完善、案例丰富、响应及时
开源协议
APACHE LICENSE 2.0
- ⛔ 禁止修改源码注释和出处
- ⛔ 禁止简单包装后声称为自有产品
- ⛔ 禁止用于非法目的
同类对比
特性 | SnailJob | Quartz | XXL-JOB | Elastic-Job | PowerJob |
---|---|---|---|---|---|
多语言支持 | ✅ Java/Python/Go | ❌ 仅Java | ❌ 仅Java | ❌ 仅Java | ❌ 仅Java |
分布式重试 | ✅ 完整支持(本地/远程/混合) | ❌ 不支持 | ❌ 不支持 | ❌ 不支持 | ❌ 不支持 |
任务编排/工作流 | ✅ 可视化流程/节点依赖 | ❌ 不支持 | ❌ 不支持 | ❌ 不支持 | ✅ 支持 |
分布式计算 | ✅ 广播/集群/分片/动态分片 | ❌ 不支持 | ✅ 广播 | ✅ 静态分片 | ✅ 支持 |
调度粒度 | ✅ 秒级/CRON/固定频率 | ❌ 仅CRON | ❌ 仅CRON | ❌ 仅CRON | ✅ 秒级/CRON/固定频率/延迟/一次性 |
数据隔离/权限 | ✅ 支持命名空间/细粒度权限 | ❌ 不支持 | ✅ 基础支持 | ✅ 基础支持 | ❌ 不支持 |
任务类型 | ✅ Java/Shell/HTTP/ CMD/PowerShell | ✅ Java | ✅ Java/脚本 | ✅ Java/脚本 | ✅ 支持 |
失败/死信队列 | ✅ 支持,自动/手动回滚 | ❌ 不支持 | ❌ 不支持 | ❌ 不支持 | ✅ 支持 |
监控与告警 | ✅ 邮件/钉钉/ 飞书/Webhook | ❌ 无 | ✅ 邮件 | ✅ 邮件 | ✅ 邮件/钉钉/企微 |
可视化运维 | ✅ 任务/日志/监控/ 在线集群查看 | ❌ 无 | ✅ 基础支持 | ✅ 基础支持 | ✅ 支持 |
高可用/扩展性 | ✅ 分区分桶/无限水平扩展 | ❌ DB锁 | ⚠️ Master瓶颈 | ⚠️ ZK瓶颈 | ✅ 无锁/分布式 |
接入成本 | ✅ 仅依赖DB,低门槛 | ✅ 仅依赖DB | ✅ 仅依赖DB | ❌ 依赖ZK | ✅ 仅依赖DB |
开源协议 | Apache 2.0 | Apache 2.0 | GPL | Apache 2.0 | Apache 2.0 |
社区活跃度 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐⭐ |