Multi-tenant job scheduling
Your task
Design traffic shaping for a multi-tenant async job platform (think a hosted CI or data-pipeline service). One large tenant must not starve smaller tenants, latency-sensitive jobs should jump ahead of big batch jobs, and the system must absorb bursts without unbounded queue growth. You have a pool of workers consuming from queues. Design the queuing/scheduling so it's fair, prioritized, and bounded.
It covers
- Fair queuing
- Priority
- Backpressure