xuxueli/xxl-job
运维与部署面向 Java 团队的分布式任务调度平台,支持 Cron、脚本、分片与 AI 任务在多执行器集群上运行。
项目介绍
XXL-JOB 是一个基于 Java 的分布式任务调度框架。调度中心负责统一管理任务,通过 Web 页面操作;执行器集群自动注册并运行实际任务逻辑。适合需要让定时任务在重启后不丢失、能横向扩展、并且可观测的团队,而不是只依赖单机 cron。
主要能力包括:Cron、固定间隔、固定延时、API/事件、人工、父子任务等触发方式;分片广播与动态分片;第一个、最后一个、轮询、随机、一致性 HASH、故障转移、忙碌转移等路由策略;阻塞处理、超时控制、失败重试、邮件告警、Rolling 实时日志,以及支持在线编辑代码和 30 个历史版本的 GLUE Web IDE 功能列表。执行器会周期性自动注册 功能列表,调度中心集群通过 DB 锁保证一次调度只触发一次执行 功能列表。项目还提供 AI 执行器,内置与 spring-ai、ollama、openclaw、dify 等集成打通的 AI 任务 Handler 功能列表。
快速使用
官方文档是部署的权威入口:中文文档 和 English Documentation 说明了部署方式。仓库已将 xxl-job-core 发布到 Maven 中央仓库 Maven 制品,并在 Docker Hub 提供官方调度中心镜像 admin 镜像,这是最直接的起点。
按文档准备好 MySQL 数据库后,典型流程是:
- 从 xxl-job-admin 拉取并启动调度中心容器,连接你的数据库。
- 在执行器应用中引入 Maven 中央仓库的
xxl-job-core依赖。 - 配置执行器的调度中心地址和应用名,使其自动注册到调度中心。
- 在 Web 页面新建任务,选择触发策略和路由策略并执行;执行结果和 Rolling 日志可在页面查看。
README 未给出具体的容器启动命令、必需环境变量或执行器配置项,这些准确值请以官方文档为准,不要自行猜测。
使用约束
- 技术栈为 Java,且调度中心状态存放在数据库中;需要准备 MySQL 兼容存储并开放数据库访问。
- 调度中心和执行器都按集群高可用设计,需要相应配置,而不是只跑单节点。
- 任务行为取决于按任务配置的阻塞、超时、重试和路由策略;对长耗时或高频任务,应逐项确认默认策略。
- 许可证为 GPL-3.0 许可证;README 提到可邮件联系作者获取项目授权。
- README 中有赞助商链接和很长的接入公司清单,这些属于宣传与社区内容,不能作为适合你业务负载的依据。
HotRepo 点评
XXL-JOB 是 2015 年创建的老项目,Java 用户基数很大,最近一次记录的快照显示 30,654 Star、11,490 Fork。在 2026-11-07 的 Java 日榜上新增 2 Star、排名第 15;只有这一条快照,不能据此判断增长趋势,也没有全部语言日榜名次记录。对读者而言,真正值得关注的是它功能密集、运行面也大:分片、故障转移、路由策略和在线 IDE 都需要认真配置。它适合已经运行集群服务和数据库后台的 Java 团队,不太适合当作简单的单机 cron 替身。
本文由 AI 根据项目 README 生成,更新于 ,以项目官方文档为准。