simple-kv-cache
TypeScript icon, indicating that this package has built-in type declarations

1.2.4 • Public • Published

LRU Cache

LRU cache implemented with a hashmap and doubly linked list.

Implementation

  • Hashmap: Associates keys with doubly linked list nodes.
  • Doubly Linked List: Manages entries by access recency.
    • New entries are inserted at the head.
    • When the cache is full, the tail (least recently used) entry is removed.
    • Accessing an entry moves it to the head, updating its recency.

Installation

npm i simple-kv-cache

Usage

import { LRUCache } from "simple-kv-cache"

const cache = new LRUCache({
  maxCapacity: 5000, // default is 1000
})

// store value
cache.set("users", [
  {
    id: 1,
    name: "John Doe",
  },
])

// retrieve value
cache.get("users")

// remove value
cache.remove("users")

// remove all values
cache.clear()

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Dependents (0)

Package Sidebar

Install

npm i simple-kv-cache

Weekly Downloads

4

Version

1.2.4

License

MIT

Unpacked Size

6.99 kB

Total Files

5

Last publish

Collaborators

  • saadt