Tiered/layered cache adapter for Flight Framework - combine multiple cache layers
npm install @flightdev/cache-tieredbash
npm install @flightdev/cache-tiered
`
Quick Start
`typescript
import { createCache } from '@flightdev/core/cache';
import { tiered } from '@flightdev/cache-tiered';
import { lru } from '@flightdev/cache-lru';
import { redis } from '@flightdev/cache-redis';
const cache = createCache(tiered([
lru({ max: 100, ttl: 60000 }), // L1: Fast in-memory
redis({ url: process.env.REDIS_URL }), // L2: Shared Redis
]));
// Reads check L1 first, then L2
// Writes go to all layers
await cache.set('key', 'value');
const value = await cache.get('key');
`
Configuration
`typescript
tiered([
// Layers in order of priority (fastest first)
memoryAdapter,
redisAdapter,
s3Adapter, // For very large/cold data
], {
// Write to all layers on set (default: true)
writeThrough: true,
// Populate faster layers on cache miss (default: true)
populateOnMiss: true,
});
``