Giter Site home page Giter Site logo

cacheman-file-cluster's Introduction

cacheman-file-cluster

File caching library supporting clusters and multiple instances for Node.JS and also cache engine for cacheman.

Build Status

Instalation

$ npm i cacheman-file-cluster -S

Usage

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

  });
});

API

CachemanFile()

Create cacheman-file-cluster instance.

var cache = new CachemanFile();

cache.set(key, value, [ttl, [fn]])

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

cache.get(key, fn)

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

cache.del(key, [fn])

Deletes a key out of the cache.

cache.del('foo', function (err) {
  if (err) throw err;
  // foo was deleted
});

cache.clear([fn])

Clear the cache entirely, throwing away all values.

cache.clear(function (err) {
  if (err) throw err;
  // cache is now clear
});

cache.getAll([fn])

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

Run tests

$ make test

License

MIT License

cacheman-file-cluster's People

Contributors

varunbatrait avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.