Skip to content

Redis scripting (LUA) for node_redis (Fork of node_redis_lua)

Notifications You must be signed in to change notification settings

Redsmin/node-redis-lua

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Fork of node_redis_lua by shirro

Patch redis script commands into node-redis prototype.

Npm

npm install redis-lua2

Usage

First attach redis-lua to node_redis:

redis = require('redis');
require('redis-lua2').attachLua(redis)

Then define some scripts (scripts may take an unlimited number of arguments):

redis.lua('myset', 'return redis.call("set", KEYS[1], KEYS[2])');

If the last parameter is set to true the command result will be converted to a JavaScript object literal:

redis.lua('hashtest, 0, 'return redis.call("hgetall", "something")', true);

Finally create a redis client and call the script like a regular redis command:

r = redis.createClient();
r.myset(2, 'testing', 'surprise', redis.print);

Note: 2 is the number of keys that the script will receive. Arrays are also supported:

var args = ['testing', 'surprise']
,   r = redis.createClient();
r.myset(args.length, args, function(err, res){console.log(arguments)});

The lua script will be passed by eval the first time and subsequent calls by evalsha.

About

Redis scripting (LUA) for node_redis (Fork of node_redis_lua)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published