The notification service overwhelms an SMS gateway limited to 10 requests per second. What is the correct design?
- A Retry aggressively on HTTP 429
- B Buffer notifications in a queue and drain them with a bounded-concurrency consumer (correct answer)
- C Scale the notification service out further
- D Publish notifications directly from the order API
Shortcut: A queue absorbs the burst and decouples arrival rate from processing rate. Bounding consumer concurrency, for example with maxConcurrentCalls, holds the outbound rate under the gateway's limit. Scaling out or retrying harder increases pressure on the very component that is failing.