node cache provider using redis, memcache, lru, mysql, file
npm i node-caches --save
you need to install some dependencies for provider.
- Mysql
npm i sequelize mysql2 --save
- Memcache
npm i memcache-plus sequelize mysql2 --save
- File
npm i cacache --save
- Redis
npm i ioredis --save
- LRU
npm i lru-cache --save
- Mongodb
npm i mongoose --save
import { config } from 'node-caches'
mysql
mysql = config({
store: 'mysql',
options: {
database: 'ncache',
username: 'root',
password: 'root123456',
host: 'localhost'
}
})
options
parameters will be passed to http://docs.sequelizejs.com/class/lib/sequelize.js~Sequelize.html#instance-constructor-constructor
memcache
mem = config({
store: 'memcache',
options: {
hosts: ['127.0.0.1:11211'],
mysql: {
database: 'ncache',
username: 'root',
password: 'root123456',
host: 'localhost'
}
}
})
options
parameters will be passed to https://github.com/victorquinn/memcache-plus/blob/master/docs/initialization.md#options
options.mysql
parameters will be passed to http://docs.sequelizejs.com/class/lib/sequelize.js~Sequelize.html#instance-constructor-constructor
file
file = config({
store: 'file',
options: {
path: path.resolve(__dirname, '.cache')
}
})
redis
redis = config({
store: 'redis',
options: {
port: 6379,
host: '127.0.0.1'
}
})
options
parameters will be passed to https://github.com/luin/ioredis/blob/master/API.md#new_Redis_new
lru
lru = config({
store: 'lru',
options: {
max: 500,
maxAge: 1000 * 60 * 60
}
})
options
parameters will be passed to https://github.com/isaacs/node-lru-cache#options
mongodb
mongodb = config({
store: 'mongodb',
options: {
url: 'mongodb://localhost:27017'
}
})
export interface ICache {
read: Function,
write: Function,
delete: Function,
search: Function,
clean: Function
}
Also see the API Documentation
Copyright (c) Terry Cai. Licensed under the MIT license.