mem100x
Version:
⚡ The FASTEST MCP memory server ever built - 66k+ entities/sec with intelligent context detection
46 lines • 1.2 kB
TypeScript
/**
* Two-Queue (2Q) Cache Implementation
*
* 2Q algorithm uses three structures:
* - Am: Fast FIFO queue for recent items (admission queue)
* - A1in: FIFO queue for items seen once
* - A1out: Ghost entries (keys only) of recently evicted from A1in
*
* Items graduate from A1in to Am only if accessed again while in A1out.
* This filters out one-time access patterns efficiently.
*/
export declare class TwoQueueCache<K, V> {
private readonly maxSize;
private readonly kinSize;
private readonly koutSize;
private am;
private a1in;
private a1out;
private hits;
private misses;
constructor(maxSize?: number);
get(key: K): V | undefined;
set(key: K, value: V): void;
private promoteToAm;
private addToA1in;
has(key: K): boolean;
delete(key: K): boolean;
clear(): void;
getStats(): {
hits: number;
misses: number;
hitRate: number;
size: number;
distribution: {
am: number;
a1in: number;
a1out: number;
};
};
getState(): {
am: K[];
a1in: K[];
a1out: K[];
};
}
//# sourceMappingURL=two-queue-cache.d.ts.map