{"categories":[{"label":"WWW/HTTP","url":"https://skillfed.io/packages/category/internet-www-http/7"}],"enrichment":{"capability":"Implements rate limiting for requests or operations using Redis as the backend store, supporting per-client and per-resource limits with configurable time windows.","skillfed_tags":["rate-limiting","redis-backed","distributed-systems"],"use_cases":["Protect API endpoints from abuse by limiting requests per IP address or user ID to a fixed quota per second, minute, or hour.","Enforce fair-use quotas in multi-tenant systems where each tenant has a separate rate limit tracked across distributed servers.","Implement sliding-window rate limiting for background job workers or scheduled tasks that consume shared resources.","Add rate limiting to individual functions or methods without rewriting core logic using the decorator pattern."],"what_it_does":"python-redis-rate-limit provides a simple abstraction for rate limiting on top of Redis, allowing you to enforce request quotas per client or resource. It works as a context manager or decorator, raising TooManyRequests when a limit is exceeded. You define a resource name, client identifier, maximum requests, and optional time window (expire), and the package tracks request counts in Redis, automatically resetting them when the window expires.\n\nThe package is designed for distributed systems where multiple application instances need to share rate-limit state. It has no runtime dependencies\u2014you supply your own Redis connection or pool\u2014and supports both simple one-off limits and a factory pattern for reusable limiters. Maintenance is dormant but the codebase is stable; the last commit was 2024-10-23 but preceded by a long gap, indicating the package is mature and not under active development.","worth_installing":"Yes, if you already run Redis and need straightforward per-client rate limiting. The package is stable, has no external Python dependencies, and the MIT license is unrestricted. The main trade-off is dormant maintenance\u2014no active development, so expect to fork or patch if you need new features or encounter bugs. High install friction due to the Redis dependency is acceptable for projects that already use Redis."},"id":"python-redis-rate-limit","links":{"html":"https://skillfed.io/packages/python-redis-rate-limit","md":"https://skillfed.io/packages/python-redis-rate-limit.md","pypi":"https://pypi.org/project/python-redis-rate-limit/"},"maintenance":{"status":"dormant"},"meta":{"latest_release":"2024-10-23","license_spdx":null,"license_treatment":"permissive","name":"python-redis-rate-limit","python_support":"unspecified","summary":"Python Rate Limiter based on Redis."},"popularity":{"monthly_downloads":108702,"position":12544,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"0.0.10"}
