Distributed Rate Limiting - Designing a Rate Limiter | OneNoughtOne