Overview
GoblinCache is a multi-level caching library designed to efficiently manage data across different storage layers. It incorporates in-memory storage, IndexedDB, and Web Workers for optimized performance. The package is highly configurable and suited for applications where data accessibility, performance, and efficiency are crucial.
Features
- Multi-Level Caching: Three levels of caching: In-Memory, IndexedDB, and custom workers.
- Highly Configurable: Batch sizes, maximum number of batches, and timeouts can be adjusted for each layer.
- LRU Eviction: Least Recently Used (LRU) eviction algorithm for the in-memory layer.
- Promotion and Eviction: Cache items are promoted or evicted between layers automatically based on configuration.
- Batch Processing: Handles multiple requests in a single batch to maximize throughput.
- Concurrency Control: Utilizes Web Workers for concurrent processing without blocking the main thread.
- Singleton Pattern: Ensures a single instance of the cache manager.