File caching library supporting clusters and multiple instances for Node.JS and also cache engine for cacheman.
$ npm i cacheman-file-cluster -S
var CachemanFile = require('cacheman-file-cluster');
var cache = new CachemanFile({
tmpDir: "./cache"
});
// set the value
cache.set('my key', { foo: 'bar' }, function (error) {
if (error) throw error;
// get the value
cache.get('my key', function (error, value) {
if (error) throw error;
console.log(value); //-> {foo:"bar"}
// delete entry
cache.del('my key', function (error){
if (error) throw error;
console.log('value deleted');
});
});
});
Create cacheman-file-cluster
instance.
var cache = new CachemanFile();
Stores or updates a value.
cache.set('foo', { a: 'bar' }, function (err, value) {
if (err) throw err;
console.log(value); //-> {a:'bar'}
});
Or add a TTL(Time To Live) in seconds like this:
// key will expire in 60 seconds
cache.set('foo', { a: 'bar' }, 60, function (err, value) {
if (err) throw err;
console.log(value); //-> {a:'bar'}
});
Retrieves a value for a given key, if there is no value for the given key a null value will be returned.
cache.get(function (err, value) {
if (err) throw err;
console.log(value);
});
Deletes a key out of the cache.
cache.del('foo', function (err) {
if (err) throw err;
// foo was deleted
});
Clear the cache entirely, throwing away all values.
cache.clear(function (err) {
if (err) throw err;
// cache is now clear
});
Get all entries in the cache. Entries are returned as an array
cache.set('foo', { a: 'bar' }, 10, function (err, result) {
cache.getAll(function (err, results) {
console.log(results) // [ { a: 'bar' } ]
});
});
$ make test
MIT License