Async-first across memory, Redis, Memcached, disk, and SQLite — same invalidation and patterns. Sync helpers when you are not in an async app. Optional HTTP caching, FastAPI decorators, metrics, CLI.
Tag-aware invalidation and dependency-friendly patterns so stale reads are the exception, not the rule.
Redis, Memcached, in-process memory, disk, and SQLite share one interface — swap stores without rewriting call sites.
Use await in FastAPI, Starlette, Django async, and workers. For blocking code, get_sync / set_sync or @cached on a normal function.
Circuit breaker, retries, and stale-if-error style patterns to degrade gracefully under pressure.
Starlette ASGI middleware for ETag and Cache-Control — 304-friendly responses when you enable the web extra.
Prometheus and StatsD hooks plus OpenTelemetry-friendly tracing for cache spans.
Optional similarity and vector workflows when your stack needs semantic-style cache keys.
Inspect keys, stats, and health from the terminal for debugging and on-call.
| Topic | Link |
|---|---|
| Install and first run | Getting started → |
| Patterns, backends, FastAPI | Usage patterns → · Backends → · FastAPI → |
| Python API | API reference (pdoc: modules & types from docstrings) → |
| Releases | Changelog → |