Caching in Redis for Node.js
JavaScript
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
lib
.gitignore
package.json
readme.md

readme.md

redis-cache

Super simple redis-based single-lookup caching for Node.js designed as a temporary storage for Hook.io

Install

$ npm install redis-cache

Usage

Example using Hook.io (obviously very simplified)

hook-one.js
var cache = require('redis-cache');

cache.init('redis://...');

hook.emit('doSomething', 'data', function(err, key) {
	if (err) {...}
	cache.fetch(key, function(err, reallyBigResult) {
		if (err) {...}
		
		// ...
		
	});
});
hook-two.js
var cache = require('redis-cache');

cache.init('redis://...');

hook.on('*::doSomething', function(data, callback) {
	doSomething(data, function(err, reallyBigResult) {
		if (err) {...}
		cache.store(reallyBigResult, function(err, key) {
			if (err) {...}
			callback(null, key);
		});
	});
});

Configuration

The redisCache.init method can take a redis url as a paramter as shown above, or a config object.

{
	"url": "redis://...",
	"expire": 600
}

The expire value is how long (in seconds) a value is held in cache.