All Products
Search
Document Center

Microservices Engine:Compatibility with managed XXL-JOB jobs

Last Updated:Apr 23, 2025

This topic describes how to manage XXL-JOB jobs by using XXL-JOB or SchedulerX provided by Task Scheduling of Microservices Engine (MSE). We strongly recommend that you use the highly compatible XXL-JOB to manage XXL-JOB jobs.

XXL-JOB

Overview

The public preview of XXL-JOB has ended. XXL-JOB is built on top of Alibaba Cloud SchedulerX and is compatible with the network layer protocol of XXL-JOB. It provides a solution to manage an existing XXL-JOB client without requiring you to modify business code. We strongly recommend that new users use XXL-JOB for a better job scheduling experience.

SchedulerX

Overview

schedulerx2-plugin-xxljob is added to the POM file to support compatibility with SDK interfaces of XXL-JOB. You can directly manage your XXL-JOB client on SchedulerX without the need to modify a line of code. SchedulerX supports the @XxlJob annotation and JobHandler class.

Benefits

Saved server and O&M costs

A minimum configuration of two servers and one database is required by self-managed XXL-JOB jobs. If you use SchedulerX to manage XXL-JOB jobs, you can reduce costs on servers and O&M personnel.

High compatibility

When you upgrade an SDK, changes between XXL-JOB versions may cause compatibility issues. In this case, code refactoring is required to ensure compatibility. SchedulerX 2.0 is highly compatible with the interfaces and annotation methods across various XXL-JOB versions. This eliminates the need to modify the business code during SDK upgrades.

High capacity and precise scheduling

Typically, open source XXL-JOB jobs run on one node due to the distributed database lock mechanism, which causes high workloads on databases. Statistics data indicates that the response latency increases when more than 10,000 minute-level XXL-JOB jobs are scheduled by a single node. When XXL-JOB jobs need to be scheduled in seconds, the response latency significantly increases.

SchedulerX 2.0 employs a distributed architecture that assigns jobs to individual servers. This eliminates contention for locks among processes. This design facilitates horizontal scalability, enabling the platform to schedule millions of concurrent jobs. SchedulerX 2.0 uses a dedicated architecture optimized for minimal resource consumption. This enables low-latency execution of jobs that need to be scheduled in seconds. SchedulerX 2.0 also supports one-time jobs. This allows users to schedule and run a job only once at a specified point in time. After the job is run, SchedulerX 2.0 automatically deletes it. This capability applies to scenarios such as periodic notifications or automatic order closing at a scheduled deadline.

Powerful data visualization capabilities

View the user dashboard

View the historical records of jobs

View the operational logs

View the running stack for a job

View the historical records of a job

Advanced features

Job orchestration

SchedulerX 2.0 also provides a visually intuitive approach to job orchestration based on Directed Acyclic Graphs (DAGs). You can design complex job dependencies and sequences by simply dragging and dropping nodes on the graphical frontend interface. Within the granular view of a DAG for any given job in SchedulerX 2.0, you can easily access comprehensive job status information and figure out the cause of failed downstream jobs.

6

Throttling

SchedulerX 2.0 is often used to run overnight jobs for generating offline reports. For example, a large number of report generation jobs start at 01:00 or 02:00. To avoid service interruption, SchedulerX 2.0 limits the number of simultaneous jobs running within an application. If the upper limit is reached, the additional jobs are automatically queued to prevent overload issues. If you want to make sure that KPI reports are completed by 09:00, you can assign a higher priority to the KPI report generation job. This prioritization feature ensures that jobs of higher priorities are completed ahead of jobs of lower priorities.

SchedulerX 2.0 allows jobs in a preemptible queue to be preempted by jobs that have higher priorities. You can enable this feature in the SchedulerX console.

7

Resource isolation

SchedulerX 2.0 allows you to isolate resources by namespace or application. SchedulerX 2.0 also supports permission management in multitenancy scenarios.

Commercialized alerting and O&M

Alerting

SchedulerX 2.0 sends alerts for job execution issues, including failures, timeouts, and absence of available workers. Multiple alerting methods are supported, such as emails, DingTalk, text messages, and phone calls. You can diagnose the failure causes by examining the details in the alert notifications.

O&M operations

SchedulerX 2.0 allows you to rerun jobs, refresh job data, mark jobs as completed, view stacks, terminate jobs, and specify workers.

2