{"categories":[{"label":"Python Modules","url":"https://skillfed.io/packages/category/software-development-libraries-python-modules/3"},{"label":"Documentation","url":"https://skillfed.io/packages/category/software-development-documentation"}],"enrichment":{"capability":"PyrateLimiter implements the Leaky-Bucket rate-limiting algorithm with support for multiple simultaneous rate limits, pluggable backends (in-memory, SQLite, Redis, Postgres, multiprocessing), and both sync and async APIs.","skillfed_tags":["rate-limiting","async-friendly","distributed"],"use_cases":["Enforce API rate limits on web services (e.g., 100 requests per minute per user)","Throttle background job workers to avoid overwhelming downstream services","Distribute rate limits across multiple processes or machines using Redis or Postgres","Implement per-resource quotas in multi-tenant applications with independent tracking","Decorate async functions to prevent concurrent request spikes without blocking"],"what_it_does":"PyrateLimiter is a rate-limiting library that enforces request quotas using the Leaky-Bucket algorithm. It allows you to define multiple simultaneous rate limits (e.g., 5 per second and 1000 per hour) on the same key, and routes each key to a bucket that tracks and throttles incoming requests. The library works in both sync and async contexts, offering blocking (wait for a permit), non-blocking (fail fast), and timeout-based acquisition modes.\n\nThe package supports multiple storage backends: in-memory buckets for single-process use, SQLite for persistence, Redis (sync and async) for distributed systems, Postgres for shared state, and multiprocessing for worker pools. You can use it directly via `try_acquire()` calls, as a decorator on functions, or as a context manager. The same API works identically in sync and async code paths without blocking the event loop.","worth_installing":"Yes. PyrateLimiter is a mature, well-maintained library with zero known vulnerabilities, no runtime dependencies, and permissive licensing. It solves a common problem (rate limiting) with a clean API that works seamlessly in both sync and async code. Install it if you need to enforce request quotas or throttle access to resources."},"id":"pyrate-limiter","links":{"html":"https://skillfed.io/packages/pyrate-limiter","md":"https://skillfed.io/packages/pyrate-limiter.md","pypi":"https://pypi.org/project/pyrate-limiter/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2026-06-14","license_spdx":"MIT","license_treatment":"permissive","name":"pyrate-limiter","python_support":"supports_current","summary":"Python Rate-Limiter using Leaky-Bucket Algorithm"},"popularity":{"monthly_downloads":7896876,"position":1683,"tier":"top_5000"},"security":{"n_vulnerabilities":0},"version":"4.4.0"}
