API Reference
Cache (синхронный)
__init__
Аргументы
redis_client- экзепляр синхронногоRedis.logger- опциональный логгер.
cache
Аргументы
ttl- время жизни кэша в секундах.prefix- опциональный префикс для ключа.use_pickle- использоватьpickleдля сериализации.
Важно: Не используйте decode_responses=True в Redis-клиенте при включённом use_pickle=True.
invalidate_cache
Удаляет все ключи по префиксу.
Аргументы
prefix- префикс для удаления."*"- удаляет всё.timeout_seconds- времяб отведенное на выполнение инвалидации.
Возвращает: удаленное количество ключей.
Cache (асинхронный)
Аналогичный, но методы асинхронные
from simple_redis_cache.asyncio import Cache
cache = Cache(redis)
@cache.cache(ttl=60, prefix="user")
async def get_user(user_id: int):
return {"id": user_id}
await cache.invalidate_cache(prefix="user")
CustomJSONEncoder
Кастомный JSON-энкодер для поддержки:
datetime-> ISO-строкаDecimal-> floatUUID-> строкаPydantic-модели->model_dump()