Skip to content

Commit

Permalink
just updated the readme doc to be more readable using markdown
Browse files Browse the repository at this point in the history
  • Loading branch information
csanz committed Mar 28, 2011
1 parent 7c89d9d commit 8c13e26
Showing 1 changed file with 63 additions and 0 deletions.
63 changes: 63 additions & 0 deletions Readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
Description
-----------

Node-RQueue is a simple Redis based message queue for communicating between multiple platforms.

It uses a easy to implement message paradigm within Redis lists.

An example message:

{
id: UUID,
payload: 'JSON DATA',
errors: ['HTTP 404'],
error_count: 1
}

Messages are put onto the list with `rpush`, then the client listens for messages with the `blpop` command.

Usage
-----

queue-server.js:

// Require the node-rqueue
var client = require('./node-rqueue');

// Create the Queue with a redis server listening on localhost:6379
var user_queue = new client.Queue({
name: 'user',
host: 'localhost',
port: 6379
});

// Add a job to the queue.
user_queue.push('Any JSON.strinify-able data goes in this parameter', function (error, id) {
// Handle errors
if (error) throw error;
// Second parameter is the message/job id.
});

queue-worker.js:

// Require the node-rqueue
var client = require('./node-rqueue');

// Create a worker for each queue.
var worker = client.createWorker({
name: 'user',
host: 'localhost',
port: 6379
});

// Setup message event
worker.on('message', function (job) {
// Process message
process(job.payload);

// Listen for next job
worker.next();
});

// Start listening.
worker.start();

0 comments on commit 8c13e26

Please sign in to comment.