PyrateLimiter is a fast, async-friendly rate limiter for Python -- Leaky-Bucket algorithm with pluggable backends. Features: - Leaky-bucket algorithm: smooth, well-understood rate limiting. - Multiple rates at once: e.g. 5/second and 1000/hour on the same key. - Per-key limits: track different services, users, or resources independently. - Pluggable backends: in-memory, SQLite, Redis (sync and async), Postgres, and multiprocessing. - Sync & async: the same API works in both; async paths never block the event loop. - Direct calls or decorators: limiter.try_acquire(...) or @limiter.as_decorator(...). - Blocking or non-blocking: wait for a permit (with optional timeout) or fail fast.