Managing Long Running Tasks easy
Why might you 'Throttle' (limit the speed of) your background workers?
- A To make them slower.
- B To save electricity.
- C To increase latency.
- D To prevent them from overwhelming the database or external APIs with too many concurrent requests.
Answer: D. To prevent them from overwhelming the database or external APIs with too many concurrent requests.
Workers can process faster than the DB can write. Throttling protects downstream dependencies.
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?
- When implementing retries for failed tasks, why use 'Exponential Backoff' with 'Jitter'?