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.

/simple-kv-cache/

    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