System design interview question
Design a Distributed Rate Limiting and Quota Management System (like Stripe API Rate Limiting at Scale)
Design a globally distributed rate limiting and quota management system that enforces API rate limits for millions of customers across multiple geographic regions with sub-millisecond latency. The system must support varied rate limit policies (token bucket, sliding window, adaptive limits), handle 500K+ concurrent API requests per second, persist quota state with strong consistency guarantees, and gracefully degrade during partial outages without losing quota accuracy. Customers can have different limits per endpoint, time window, and user tier, and the system must prevent quota exhaustion attacks while supporting real-time quota visibility across a multi-region deployment.
Practice this question step by step with an AI interviewer that reviews your requirements, your architecture and your trade-offs, and scores the design.