storeman
Simple storage API unifier with prefix support
Last updated 11 years ago by ktmud .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ npm install storeman 
SYNC missed versions from official npm registry.

Storeman

A man to help you unify API for mischellaneous storage engines.

Provide a handful set of of useful methods: get, set (with ttl), del, mget.

With built-in Redis and LevelUP support.

Usage

var Storeman = require('storeman')
var Redis = require('redis')
var levelup = require('levelup')

// cache with Redis
var cache = new Storeman({
    prefix: 'cache:',
    client: Redis.createClient(),
    encode: function(data){
        return JSON.stringify(data)
    },
    decode: function(data) {
        return JSON.parse(data)
    }
})

// persistent storage with leveldb
var store = new Storeman({
    prefix: 'store:',
    client: levelup('./var/leveldb')
})

API

The main purpose of this module is to provide a higher level of consistent API over different storage clients. That means:

  • consistent method name
  • consistent function signature
  • consistent return results

All methods include:

store.get(key, callback)

Will callback(null, undefined) when no data is found, not return a null (as redis does) or emit an error (as leveldb does). This behavior is for in case you want really set data as null.

store.set(key, value, [ttl], callback)

The client is responsible for handling ttl, Storeman will not do this for you.

store.del(key, callback)

Supports batch delete by passing an Array as key.

License

the MIT license.

Current Tags

  • 0.1.2                                ...           latest (11 years ago)

4 Versions

  • 0.1.2                                ...           11 years ago
  • 0.1.1                                ...           11 years ago
  • 0.0.3                                ...           11 years ago
  • 0.0.1                                ...           11 years ago
Maintainers (1)
Downloads
Total 0
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 0
Dependencies (2)
Dev Dependencies (3)
Dependents (1)

© 2010 - cnpmjs.org x YWFE | Home | YWFE