dq is a simple priority queue built on Redis.
npm install --save dq
alias: create()
config
: Can take any of the following: a.name
(required) b.port
, defaults to6379
c.host
, defaults '127.0.0.1' d.password
callback
: optional, has signature(err, q)
Example:
var dq = require('dq')
var q = dq.connect({name: 'tasks'})
// or...
dq.connect({name: 'tasks'}, function (err, q) {
})
callback
: has signature(err, count)
Example:
var dq = require('dq')
var q = dq.connect({name: 'tasks'})
q.count(function (err, count) {
console.log(count) // => 1356
})
callback
: has signature(err, val)
val
is an Array
if count
was specified.
Example:
var dq = require('dq')
var q = dq.connect({name: 'tasks'})
q.deq(function (err, val) {
console.log(val)
})
value
: (required) data to put in the queue, should be astring
, any non-string will be type coercedpriority
: (optional), defaults to0
, you should choose between0
and1
using the result of Math.random(). Values between-Infinity
andInfinfity
will be accepted.callback
: has signature(err, val)
Example:
var dq = require('dq')
var q = dq.connect({name: 'tasks'})
q.enq('some data', Math.random(), function (err) { })
Return data from start
until start + count
, but don't remove the data.
example:
Assume the queue has the following contents: ['a', 'b', 'c', 'd']
var dq = require('dq')
dq.create({name: 'somedata'}, function (err, q) {
q.peak(1, 2, function (err, data) {
console.dir(data) // => ['b', 'c']
})
})
Licensed under MIT. See LICENSE
for more details.
Copyright (c) 2012-2015 JP Richardson