SchedulerX is a distributed job scheduling product developed by the Alibaba middleware group. SchedulerX is widely used within Alibaba Group and is optimized over years through more than a thousand service applications. Hundreds of thousands of jobs are steadily running on SchedulerX every day within Alibaba Group, and hundreds of millions of job scheduling jobs are completed on SchedulerX every day.
You can deploy SchedulerX-Client in your applications and create scheduled jobs in the EDAS console. After configuring the relevant parameters and starting the application, it can receive scheduled jobs run at regular intervals. The SchedulerX-Server cluster guarantees high availability and high stability for scheduling and triggering. It can perform distributed scheduling on your client clusters.
Both SchedulerX-Client and SchedulerX-Server are in the distributed architecture. Jobs can run on any client host among multiple client hosts. If a client crashes, the server selects a client (service App machine) that runs properly to run the job.
Each job has a backup on the three SchedulerX-Server instances separately. If any two SchedulerX-Server instances crash, the job can still be scheduled.
You do not have to pay attention to the scheduling logic. You only need to implement the service logic.
Easy to use
You only need to add the JAR package of SchedulerX-Client to the service applications, implement the JobProcessor interface, and configure a job in the active maintenance console.
Support for the Quartz time expression
The internationally recognized Quartz time expression is supported. The Quartz time expression has second-level precision.
SchedulerX provides a user-friendly pages in EDAS console for you to create, delete, and modify jobs. The instant running feature is provided, allowing you to manually run your job in test or other critical moments.In addition, you can query historical running records. The last 100 historical running records of any job can be queried.
Jobs triggered at a fixed time point
Example: Run a job at 00:00 on 11 November, 2016.
Jobs triggered at intervals
Example: Run a job every second (hour, day, week, or month).
Jobs manually triggered in the console
Example: Manually trigger the scheduling and running of a job in the console.After a job is triggered and run, the code in the job processor interface that is implemented by the user determines the service logic to be implemented (for example, table scanning, RPC call triggering, storage to the database, or running of the local script).