Skip to content

Latest commit

 

History

History
100 lines (80 loc) · 3.84 KB

File metadata and controls

100 lines (80 loc) · 3.84 KB

cachekit Documentation

Smart caching that just works — from simple to advanced


Quick Navigation

Audience Guide
Just want to cache data Getting Started
Need API reference API Reference
Solving a problem Troubleshooting
Setting up infrastructure Configuration

Backends

Choose your storage backend:

Guide Description
Backend Overview Comparison and selection guide
Redis Production default, connection pooling
File Local filesystem, zero dependencies
Memcached High-throughput, consistent hashing
CachekitIO Managed SaaS, zero infrastructure
L1-Only (None) In-memory only, no external services
Custom Implement your own backend

Serializers

Choose how data is stored:

Guide Description
Serializer Overview Decision matrix
Default (MessagePack) Cross-language, general-purpose
Auto (Python types) Preserves sets, datetime, UUID, NumPy
OrjsonSerializer Fast JSON (2-5x faster)
ArrowSerializer DataFrames (6-23x faster)
Encryption AES-256-GCM wrapper
Pydantic Models Caching Pydantic objects
Custom SerializerProtocol

Features

Feature Description
Circuit Breaker Automatic failure protection
Adaptive Timeouts Smart timeout management
Distributed Locking Prevent thundering herd
Zero-Knowledge Encryption Client-side AES-256-GCM
Prometheus Metrics Production observability

Architecture & Reference

Document Description
Data Flow Architecture L1+L2 dual-layer caching internals
Performance Benchmarks and optimization
Comparison vs. lru_cache, aiocache, cachetools
Error Codes Error reference

Documentation Map

docs/
├── getting-started.md                # Tutorial (start here)
├── api-reference.md                  # Complete API docs
├── configuration.md                  # Environment setup
├── troubleshooting.md                # Error solutions
│
├── backends/
│   ├── README.md                    # Backend overview (auto-rendered)
│   ├── redis.md, file.md           # Built-in backends
│   ├── memcached.md, cachekitio.md # Optional backends
│   ├── none.md                     # L1-only mode
│   └── custom.md                   # Custom backend guide
│
├── serializers/
│   ├── README.md                    # Serializer overview (auto-rendered)
│   ├── default.md, auto.md         # Built-in serializers
│   ├── orjson.md, arrow.md         # Specialized serializers
│   ├── encryption.md               # AES-256-GCM wrapper
│   ├── pydantic.md                 # Pydantic patterns
│   └── custom.md                   # Custom serializer
│
├── features/                         # Feature deep dives
├── data-flow-architecture.md         # How it works
├── performance.md                    # Benchmarks
└── comparison.md                     # vs. alternatives