亚麻onsite系统设计题 Task Scheduler

  • User should be able to see the Jobs in UI and do CRUD operations.
  • Jobs can be of 2 types.
    • Single Execution (executed once, may be in some time in future.
    • Repetitive ( can be executed multiple times based on the schedule given)
  • Have to handle 10 Million Jobs a day.
  • If Job execution fails , retry the job for 5 times before giving up.

More specific questions

  1. What would be your DB schema for this?
  2. How will you store the jobs and execute it at the given time? Will you do a constant poll? if so, what is the time interval?
  3. Do we have any other approach apart from polling the DB constantly?
  4. How many machine are needed to handle 10Million Jobs/Day.

秋季FLAG押题班第9课 - Kafka, Kubernetes, Zookeeper和系统设计 Scheduler 对这题讲解的很好