- Core rate limiting with multiple algorithms (sliding window, token bucket, etc.) - SQLite and memory backends - Decorator and dependency injection patterns - Middleware support - Example usage files
20 lines
449 B
Python
20 lines
449 B
Python
"""Backend implementations for rate limit storage."""
|
|
|
|
from fastapi_traffic.backends.base import Backend
|
|
from fastapi_traffic.backends.memory import MemoryBackend
|
|
from fastapi_traffic.backends.sqlite import SQLiteBackend
|
|
|
|
__all__ = [
|
|
"Backend",
|
|
"MemoryBackend",
|
|
"SQLiteBackend",
|
|
]
|
|
|
|
# Optional Redis backend
|
|
try:
|
|
from fastapi_traffic.backends.redis import RedisBackend
|
|
|
|
__all__.append("RedisBackend")
|
|
except ImportError:
|
|
pass
|