Managing Long Running Tasks medium
How do you ensure VIP users get processed before free users in a single queue system?
- A Sort the queue every time.
- B Delete free users.
- C Ask them nicely.
- D Use two separate queues (High Priority and Low Priority). Workers always check the High Priority queue first.
Answer: D. Use two separate queues (High Priority and Low Priority). Workers always check the High Priority queue first.
Sorting a massive distributed queue is O(N) and slow. Bucket priorities are O(1) and fast.
One system design question a day, with spaced repetition so the ones you miss come back.
Get the appRelated questions
- What is the primary purpose of a Dead Letter Queue (DLQ)?
- The architectural pattern where one service creates tasks and another processes them is called:
- In a Priority Queue system (High vs Low), what is 'Starvation' and how do you fix it?
- How do you atomically update your local database AND publish a message to a queue without losing sync if the process crashes in between?
- What does 'Fire and Forget' mean?
- Why might you 'Throttle' (limit the speed of) your background workers?