
In simple English
Some programs need to run at set times, like every night at midnight. When you have many servers, you need a way to share and track these jobs. This tool gives you a web page to schedule tasks across all your machines. It watches for failures and retries jobs if they break. You need some server space and a database to run it.
What it is
XXL-JOB (a distributed task scheduling framework) is an open-source platform that coordinates timed tasks across a cluster of servers. It uses a central administration dashboard to trigger jobs and multiple executors to run them in parallel.
What it is good for
Solo builders and teams running heavy backend services in Java who need reliable background jobs without building a custom queue system.
- Web dashboard gives you instant visibility into task statuses and logs.
- Supports sharding to split large data jobs across multiple worker servers.
- Built-in email alerts notify you immediately when a scheduled task fails.
- Written in Java, so your workers and admin panel need a Java Runtime Environment.
- Uses a relational database (a structured way to store data in tables) to coordinate tasks, which adds setup work.
- Licenced under GPL-3.0 (a licence that requires you to share your source code if you distribute modified versions).
cron
spring-boot
- quartz-scheduler/quartz6.8k stars
A classic Java job scheduling library, while XXL-JOB adds a full distributed management dashboard.
- vectordotdev/vector23k stars
One collector that gathers logs and numbers from machines and sends them to one or more monitoring services.
- bluewave-labs/Checkmate11k stars
A self-hosted monitor that checks whether sites and services answer, records response times and sends alerts.
- statping-ng/statping-ng2.0k stars
A single-file status page and uptime checker that works with SQLite, PostgreSQL or MySQL.
git clone https://github.com/xuxueli/xxl-job.git cd xxl-job mvn clean install