sliding-rate-limiter

https://img.shields.io/pypi/v/sliding_rate_limiter.svg https://img.shields.io/travis/kalibrr/sliding_rate_limiter.svg Documentation Status Updates

Sliding rate limiter using memory or a distributed Redis backend.

Features

  • Pluggable rate limiting backend (threadsafe in-memory or distributed Redis backend)

Usage

from sliding_rate_limiter.region import RateLimiterRegion
from sliding_rate_limiter.backends.memory import MemoryBackend

region = RateLimiterRegion('default')
region.configure(MemoryBackend())

@region.rate_limit_on_arguments()
def foo(user_id):
    pass

Credits

This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.

API heavily inspired by dogpile.cache