← 返回 doordash 的题目列表Job Scheduler System Design
类型:online_judge
Design a job scheduler system to support the following functionalities:
Create a new job (name, start time, and action to execute).
Cancel a job (based on job ID).
Retrieve jobs that are due to run.
Execute jobs concurrently ensuring no job is executed more than once.
The system should be highly available and scalable to handle a high load of scheduling requests. In your design, describe the functionality and interaction of each module.
Details:
Jobs can be scheduled to run at a future point in time with millisecond precision.
The scheduler should be multithreaded and ensure jobs start on time.
Provide an API for external systems or clients to interact with the scheduler.