@kos-ng-it-konsult/cache
v0.0.1
Published
Caching library for KOS NG IT Konsult
Downloads
3
Readme
@kos-ng-it-konsult/cache
This is a caching package for KOS NG IT Konsult.
Quick Start
Install
$ npm i --save @kos-ng-it-konsult/cache
Basic Usage
"use strict";
const ioredis = require('ioredis');
const lib = require('@kos-ng-it-konsult/cache');
const redis = new ioredis(`redis://@127.0.0.1:6379`, {
port: 6379,
host: `127.0.0.1`,
family: 4,
password: '',
db: 0
});
const cache = new lib(console, redis);
const { list, hash } = cache;
const sample_data = [
{
username: 'smith',
first_name: 'Smith',
last_name: 'Alan'
},
{
username: 'jane',
first_name: 'Jane',
last_name: 'Doe'
},
{
username: 'frank',
first_name: 'Frank',
last_name: 'Sinatra'
}
];
// Write to string cache
cache
.write('smith', sample_data[0], '10 minutes')
// Read from string cache
.then(() => cache.read('smith'))
.then(val => {
console.log(val); // Outputs { username: "smith", first_name: "Smith", last_name: "Alan" }
// Delete key from cache
return cache.delete('smith');
})
.catch(error => console.log(error));
// Write to list cache
list
.write('jane', sample_data[1], '10 minutes')
// Read from list cache
.then(() => list.read('jane', 0, 1))
.then(val => {
console.log(val); // Outputs [ { username: "jane", first_name: "Jane", last_name: "Doe" } ]
// Delete from list cache
return list.delete('jane', 0, 'a', sample_data[1]);
})
.catch(error => console.log(error));
// Write to hash cache
hash
.write('user', 'frank', sample_data[2], '10 minutes')
// Read from hash cache
.then(() => hash.read('user', 'frank'))
.then(val => {
console.log(val); //Outputs { username: "frank", first_name: "Frank", last_name: "Sinatra" }
// Delete from hash cache
return hash.delete('user', 'frank');
})
// Delete multiple cache keys
.then(() => cache.deleteMulti([ 'smith', 'user' ]))
.catch(error => console.log(error));
Running the Example
To run the example, simply run the command:$ node ./example/sample.js
Running Tests
Run$ npm test