Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/bahamas10/basiccache.js
An extremely basic cache with a simple expiry system
https://github.com/bahamas10/basiccache.js
Last synced: about 2 months ago
JSON representation
An extremely basic cache with a simple expiry system
- Host: GitHub
- URL: https://github.com/bahamas10/basiccache.js
- Owner: bahamas10
- Created: 2013-02-01T05:26:14.000Z (almost 12 years ago)
- Default Branch: master
- Last Pushed: 2014-05-21T20:56:39.000Z (over 10 years ago)
- Last Synced: 2024-09-29T06:47:44.620Z (3 months ago)
- Language: JavaScript
- Size: 198 KB
- Stars: 1
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
basiccache.js
=============An extremely basic cache with a simple expiry system
Installation
------------npm install basiccache
Usage
-----### first
node
``` js
var BasicCache = require('basiccache');
```html
``` html
```
### then
``` js
var cache = new BasicCache();cache.set('foo', 'bar');
// 'foo' will never expirecache.set('key', 'value', 5 * 1000);
// key will expire in 5 seconds, regardless of accesscache.get('key');
// => 'value'setTimeout(function() {
cache.get('key');
// => 'value'
}, 3 * 1000);setTimeout(function() {
cache.get('key'); // => undefined
cache.get('foo'); // => 'bar'
}, 6 * 1000);```
expiry can be set per individual key, or pass to constructor:
```js
// default all keys to expire in one hour
var cache = new BasicCache({ expires: 3600 * 1000 })
```Function
--------### new BasicCache([opts])
- `opts.debug`: a function to use to print debug messages, defaults to a `noop`
- `opts.expires`: default expire time in ms
- `opts.prefix`: string to prefix the cache keys with for the internal cache object,
defaults to `basiccache_`
- `opts.purgeInterval`: a time, in ms, to purge the cache of expired items, defaults to no timer### cache.get(key)
Returns the cached item if it exists and hasn't expired. If the item doesn't
exist, or has been invalidated, this function will return `undefined`.### cache.set(key, value, [expires])
Set a key to a value, `expires` is the number of milliseconds from now when
this specific cache entry expires. If not configured, and no `opts.expires` was set,
the cache will never expire.### cache.remove(key)
Remove an entry from the cache, no errors are thrown if the key doesn't exist or is already invalidated.
### cache.clear()
Remove all entries from the cache.
### cache.purge()
Remove expired items from the cache.
### cache.startTimer()
Start the timer for purging expired items.
### cache.cancelTimer()
Stop the purge timer.
License
-------MIT