Rate Limiting & Backpressure
When demand outruns capacity, a system either sheds load gracefully or collapses. This quiz walks the full path: the algorithms (token vs. leaky bucket, fixed vs. sliding window), where to enforce a limit (per-IP vs. per-user, client-side debounce/throttle), how to communicate it (429, Retry-After, backoff with jitter), and how backpressure propagates through Node.js streams so a slow consumer doesn't exhaust memory. Every answer is computed, executed, or cited against the relevant spec.
Questions
- Not answered. Token bucket vs. leaky bucket: which one lets traffic burst?
- Not answered. How many requests succeed in that first instantaneous burst?
- Not answered. What does the fixed-window limiter do with these 200 requests?
- Not answered. What is the estimated request count for the trailing 60 seconds?
- Not answered. What's the difference between a sliding-window log and counter?
- Not answered. What's the real trade-off between per-IP and per-user rate limiting?
- Not answered. 429 vs. 503: which says "it's you," which says "it's me"?
- Not answered. Which are valid
Retry-Aftervalues? - Not answered. What is the delay, in milliseconds, before the retry at
attempt = 4? - Not answered. Which statements about adding jitter to backoff are correct?
- Not answered. What is the common two-word name for this synchronized-retry problem?
- Not answered. What does a
falsereturn fromwritable.write()mean? - Not answered. What happens when the source far outpaces the slow socket?
- Not answered. Why does a bounded queue beat an unbounded one under overload?
- Not answered. Which of these two behaviors is debounce, and which is throttle?