One Tenant, Half a Million

All tenants share one FIFO job queue and one worker pool. A single tenant enqueues 400,000 export jobs, and every other tenant's 30-second jobs now sit for hours. Which change fixes the fairness problem without splitting the worker pool?

A

Scale the worker pool up until the 400,000 job backlog drains inside the small tenants' latency budget, then scale it back down

B

Partition the backlog into one logical queue per tenant and have workers pull round-robin across tenants with a per-tenant in-flight cap

C

Add a priority field to the job record and mark the heavy tenant's export jobs as low priority so they are served after everything else

D

Switch the queue from FIFO to LIFO so the most recently enqueued jobs are served first and short jobs stop waiting behind the backlog