# XXL-Job — Distributed Job Scheduling Platform > A guide to XXL-Job, the lightweight distributed task scheduling platform with a web admin console, sharding, failover, and GLUE script support. ## Install Save in your project root: # XXL-Job — Distributed Job Scheduling Platform ## Quick Use ```bash # Clone and build git clone https://github.com/xuxueli/xxl-job.git cd xxl-job && mvn package -DskipTests # Initialize the database mysql -u root -p < doc/db/tables_xxl_job.sql # Start the admin center java -jar xxl-job-admin/target/xxl-job-admin-*.jar # Access web console at http://localhost:8080/xxl-job-admin ``` ## Introduction XXL-Job is a lightweight distributed job scheduling platform with an out-of-the-box web admin console. Originally created by Xu Xueli, it has become one of the most widely adopted open-source task schedulers in the Java ecosystem, handling millions of scheduled tasks daily across production environments. ## What XXL-Job Does - Provides a centralized admin console for creating, managing, and monitoring scheduled jobs - Distributes job execution across multiple executor nodes with automatic load balancing - Supports cron, fixed-rate, fixed-delay, and API-triggered scheduling strategies - Offers GLUE mode for writing job logic in Java, Shell, Python, PHP, or Node.js directly in the web UI - Tracks execution logs, success/failure statistics, and alerting via email or webhook ## Architecture Overview XXL-Job follows a scheduler-executor architecture. The Admin Center manages job metadata in MySQL and triggers executions according to schedules. Executor instances register with the admin via HTTP heartbeats and receive dispatch requests. Each executor runs jobs in isolated threads and reports results back. The admin handles retry, failover, and routing strategies (round-robin, consistent hash, broadcast, or sharding). ## Self-Hosting & Configuration - Deploy a MySQL database and initialize with the provided schema scripts - Configure xxl-job-admin application.properties with database credentials and port - Start executor instances and point them to the admin center address - Configure alarm settings for email or custom webhook notifications on failures - Scale horizontally by adding executor nodes which auto-register with the admin ## Key Features - Visual web console with job management, execution logs, and real-time monitoring - Sharding broadcast for parallel processing of large datasets across executors - GLUE IDE for editing and deploying job scripts without redeployment - Built-in failover with automatic retry and routing to healthy executor nodes - RESTful API for programmatic job creation and triggering from external systems ## Comparison with Similar Tools - **Quartz** — Embedded scheduler without distributed coordination; XXL-Job adds a central admin and multi-node dispatch - **Airflow** — DAG-based workflow orchestration for data pipelines; XXL-Job is lighter and focused on task scheduling - **Elastic-Job** — Similar distributed scheduler; XXL-Job has a simpler architecture and built-in web UI - **Celery** — Python task queue; XXL-Job is JVM-native with visual management and broader language support via GLUE - **Temporal** — Durable workflow engine; XXL-Job is simpler for straightforward cron-style job scheduling ## FAQ **Q: Can XXL-Job run non-Java jobs?** A: Yes. GLUE mode supports Shell, Python, PHP, Node.js, and PowerShell scripts directly from the web console. **Q: How does XXL-Job handle executor failures?** A: The admin detects failed heartbeats and reroutes jobs to healthy executors using the configured routing strategy with automatic retry. **Q: Is XXL-Job suitable for high-frequency scheduling?** A: Yes. XXL-Job supports second-level scheduling and can handle thousands of concurrent jobs with proper executor scaling. **Q: Does XXL-Job support job dependencies or DAGs?** A: XXL-Job supports child job triggering (job chains) but not full DAG workflows. For complex pipelines, consider pairing it with a workflow engine. ## Sources - https://github.com/xuxueli/xxl-job - https://www.xuxueli.com/xxl-job/ --- Source: https://tokrepo.com/en/workflows/e6e323ec-3d7c-11f1-9bc6-00163e2b0d79 Author: AI Open Source