public
Description: A Redis client implementation for JavaScript (Node, Google V8)
Homepage:
Clone URL: git://github.com/fictorial/redis-node-client.git
name age message
file ACKNOWLEDGEMENTS Mon Nov 02 17:17:07 -0800 2009 merged objectinterface branch; removed examples... [fictorial]
file LICENSE Mon Nov 02 17:30:08 -0800 2009 added LICENSE [fictorial]
file README.md Mon Nov 02 17:28:40 -0800 2009 Updated README [fictorial]
file TODO Mon Nov 02 21:53:42 -0800 2009 Started on work to bring the client up to date ... [fictorial]
file redis.js Mon Nov 02 21:53:42 -0800 2009 Started on work to bring the client up to date ... [fictorial]
file test.js Mon Nov 02 20:47:17 -0800 2009 Favor 'this' over 'exports' [fictorial]
README.md

redis-node-client

A Redis client implementation for Node which runs atop Google V8.

This project lets you access a Redis instance using server-side JavaScript.

Asynchronicity

Node does not block, period.

This means that while a typical Redis client might have code that accesses a Redis server in a blocking call, Node-based code cannot.

Typical Redis client (e.g. Python):

foo = client.get('counter')

This Node-based Redis client:

var foo = client.get('counter', function(value) { 
  puts("counter = " + value) 
});

That is, you must supply a callback function that is called when Redis returns, even if Redis queries are extremely fast.

A potential upside to this slightly awkward requirement is that you can enjoy the benefits of pipelining many Redis queries in a non-blocking way. Redis returns replies for requests in the order received.

See the test.js file as a good example of this.

Status

  • The full Redis 1.0 command specification is supported.
  • All tests pass.
  • See the TODO file for known issues.

Author

Brian Hammond, Fictorial