Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

bull-queue-manager

Package Overview
Dependencies
Maintainers
1
Versions
8
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

bull-queue-manager

Minimalist queue manager based on bull.

  • 1.1.1
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
1
Created
Source

bull-queue-manager

Minimalist queue manager based on bull: the awesome Node.js job and message queue.

This module provides a high level API that allow you to re-use shared configurations and instances, as well as reduce the number of redis connections to the minimum by default. Also introduce a convenient "response" promise to easily process jobs result:

let result = await q1.add({
    name: 'job1'
}).response;

Usage

Create and initialize Queue Manager:

const QueueManager = require('bull-queue-manager').QueueManager;
const qm = new QueueManager(
    6379,           //redis port
    'localhost',    //redis host
    0,              //redis db
    {}              //redis options (described in https://github.com/luin/ioredis/blob/master/API.md)
);
qm.init();
// also redis connection URL can be used
const qm = new QueueManager('redis://localhost:6379/0', {
    // options
});

Create some queues on demand:

const q1 = qm.queue('q1');
const q2 = qm.queue('q2');
const q3 = qm.queue('q3');
const q4 = qm.queue('q4');

// optionally override default config
const q5 = qm.queue('q5', 6379, 'redis.instance.com', 1, {});
const q6 = qm.queue('redis://localhost:6379/3', {});
// ...

Register job processors:

q1.process(async (job) => {
    // ... do something with job.data
    // ...

    // finally respond something
    return {
        success: true
    };
});

Add jobs to queues:

let promise = q1.add({
    name: 'job1'
});
let job = await promise; // https://github.com/OptimalBits/bull#job

Add jobs to queues, optionally process result from processing:

let promise = q1.add({
    name: 'job1'
});
// you can get the response promise here
let result = await promise.response;
// result == { success: true }  

Shutdown the QueueManager instance (close all queues):

qm.shutdown();

Keywords

FAQs

Package last updated on 18 Apr 2017

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc