lru-ram
v1.1.3
Published
Calculate the size of your LRU cache in bytes
Downloads
3
Readme
lru-ram
Calculate the size of your LRU cache in bytes.
I created this tiny module for be easy connect with whatever LRU implementation.
An LRU needs a max number of elements to keep inside the cache.
The idea behind this module is provide an estimate of this value based on a representative element to keep inside the cache and the quantity of memory (in bytes).
Install
$ npm install lru-ram --save
Usage
const lruRam = require('lru-ram')
const os = require('os')
// total bytes for your cache
const totalBytes = os.totalmem() * 0.8
// a representative element
const value = { foo: 'bar', hello: 'world' }
// the library calculate the total of items
const size = lruRam(value, totalBytes)
Then, you can use the calculated number in your favorite LRU implementation, for example:
const lruRam = require('lru-ram')
const LRU = require('lru')
const os = require('os')
// total bytes for your cache
const totalBytes = os.totalmem() * 0.8
// a representative element
const value = { foo: 'bar', hello: 'world' }
// the library calculate the total of items
const size = lruRam(value, totalBytes)
const cache = new LRU(size)
You can specify quantity of bytes in human bytes as well:
const lruRam = require('lru-ram')
const value = { foo: 'bar', hello: 'world' }
const size = lruRam(value, '2GB')
API
lruRam(value, totalBytes)
value
Required
Type: object
A representative element of your cache.
We use this value for calculate the size in bytes per each element.
totalBytes
Required
Type: Integer
Total of bytes available for the cache.
License
MIT © Kiko Beats.