Skip to content

icai/node-cache

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

node-cache

node cache provider using redis, memcache, lru, mysql, file

Install

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

Setup

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'
    }
  })

implements ICache API

export interface ICache {
  read: Function,
  write: Function,
  delete: Function,
  search: Function,
  clean: Function
}

Also see the API Documentation

LICENSE

Copyright (c) Terry Cai. Licensed under the MIT license.

About

node cache provider using mongodb, redis, memcache, lru, mysql, file.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published