Webhook delivery system
Your task
Design a webhook-delivery system that reliably delivers event notifications to millions of customer-owned HTTP endpoints. You generate ~500k events/sec; each customer endpoint must receive its events in order, at-least-once, with retries and exponential backoff when their server is down or slow. A single broken/slow endpoint must not back up delivery for everyone else, and customers need a way to replay missed events. How do you deliver at scale while isolating slow/failing destinations and guaranteeing ordering + retries?
It covers
- Webhook delivery
- Retries
- Rate limiting
- Dead letter