npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

qb-relyq

v2.1.0

Published

relyq backend for QB

Downloads

8

Readme

qb-relyq

relyq queue and push components for qb. It uses a simple and reliable work queue implemented with redis using simpleq.

Only works with qb v2.0+

Usage

npm install qb qb-relyq --save
var QB = require('qb').backend(require('qb-relyq'))
  , qb = new QB(qbOptions)

// To use relyq as a work queue:
qb.component(require('qb-relyq').queue, relyqOptions)
// OR to just push onto other service's relyqs:
qb.component(require('qb-relyq').push, relyqOptions)

Configuration

The relyqOptions above take the following options:

Push and Queue Component options

  • createRedis A function () { return redisClient } that is REQUIRED.
  • prefix The relyq redis keys will be prefixed by this (default: 'qb')
  • delimeter The delimeter to connect the prefix, the string 'service' and the service type (default: ':')
  • Q The relyq Queue Type. See relyq docs for details. (default: 'RedisJsonQ')
  • allow_defer Allow deferred tasks (default: false)
  • defer_field Field where the timestamp signifying a deferred task (default: 'when')
  • allow_recur Allow recurring tasks (default: false)
  • recur_field Field where the millisecond recurring interval is signifying a recurring task (default: 'every')

Queue Component options

  • specific An optional object of service type to options. When instantiating a queue with qb-relyq, specific options for each queue can be detailed in here. For example: specific: { myservice: { prefix: 'myservice' } }, which will be used when qb.can('myservice', myserviceCallback)
  • clean_finish Don't keep jobs around in the finished sub-queue. (default: true)
  • max_concurrent_callbacks Limit on concurrent callbacks from this queue (default: 100)
  • blocking_timeout Seconds of long-polling redis when waiting for new tasks. This will affect how long shutdown takes. (default: 5)
  • defer_polling_interval Millisecond interval between deferred task checking (default: 1000)
  • recur_polling_interval Millisecond interval between recurring task checking (default: 60000)

Notes

  • Recurring tasks must include an ID so that they are not duplicated. The ID field defaults is 'id'.

License

MIT in LICENSE file