asca-cache
v1.1.0
Published
Adaptive Smart Cache Algorithm - Intelligent cache with 23-31% DB query reduction
Maintainers
Readme
ASCA Cache SDK
Adaptive Smart Cache Algorithm for TypeScript, with built-in integrations for TanStack Query and Nitro.
ASCA uses adaptive TTL, multi-factor eviction scoring, probabilistic prefetching, and query deduplication to improve hit rates and reduce backend load.
Installation
pnpm add asca-cachePeer integrations:
pnpm add @tanstack/react-query reactFeatures
- Adaptive TTL based on frequency, volatility, fetch cost, and stability
- Multi-factor eviction engine for smarter memory pressure handling
- Prefetch prediction from access inter-arrival patterns
- Query deduplication window based on runtime latency distribution
- Client integration with TanStack Query
- Server integration for Nitro-style cached handlers
- Strong TypeScript API and tree-shakeable exports
Quick Start
import { ASCACache } from "asca-cache";
const cache = new ASCACache<string, unknown>({
capacity: 10 * 1024 * 1024,
baseTTL: 60_000
});
const data = await cache.getOrFetch("users:list", async () => {
return await fetch("https://example.com/api/users").then((r) => r.json());
});
console.log(data);
console.log(cache.getMetrics());TanStack Query
import { createASCAQueryClient, useSmartQuery } from "asca-cache";
const queryClient = createASCAQueryClient({
capacity: 50 * 1024 * 1024,
baseTTL: 30_000
});
const query = useSmartQuery(["products"], async () => {
return await fetch("/api/products").then((r) => r.json());
});Nitro
import { createSmartCachedQuery } from "asca-cache";
const defineCachedFunction = <T>(
handler: () => Promise<T>,
_options: { maxAge: number; getKey: () => string; shouldBypassCache: () => boolean }
) => handler;
const smartCachedQuery = createSmartCachedQuery(
{ capacity: 50 * 1024 * 1024, baseTTL: 30_000 },
defineCachedFunction
);
const run = smartCachedQuery("stats:live", async () => ({ usersOnline: 420 }));
const result = await run();Benchmarks
Validated workloads from Table 1 are covered in the performance test suite:
- E-commerce target: hit rate >= 94%, DB queries/min <= 50, latency <= 15ms
- Social media target: hit rate >= 92%, DB queries/min <= 115, latency <= 20ms
- Analytics target: hit rate >= 96%, DB queries/min <= 30, latency <= 25ms
Current project test run validates coverage and behavior via:
pnpm test