Async Support¶
Added in version 2.1.
A new namespace limits.aio
is available which mirrors the original
limits.storage
and limits.strategies
packages.
The following async storage backends are implemented:
Quick start¶
This example demonstrates the subtle differences in the limits.aio
namespace:
from limits import parse
from limits.storage import storage_from_string
from limits.aio.strategies import MovingWindowRateLimiter
redis = storage_from_string("async+redis://localhost:6379")
moving_window = MovingWindowRateLimiter(redis)
one_per_minute = parse("1/minute")
async def hit():
return await moving_window.hit(one_per_minute, "test_namespace", "foo")
Refer to Async Storage for more implementation details of the async storage backends, and Async Strategies for the async rate limit strategies API.