Skip to content
forked from taskforcesh/bullmq

BullMQ - Premium Message Queue for NodeJS based on Redis

License

Notifications You must be signed in to change notification settings

m-ronchi/bullmq

 
 

Repository files navigation




The fastest, most reliable, Redis-based distributed queue for Node.
Carefully written for rock solid stability and atomicity.

Read the documentation

Follow @manast for *important* Bull/BullMQ news and updates!

NEW! Tutorials

You can find tutorials and news in this blog: https://blog.taskforce.sh/

Official FrontEnd

Taskforce.sh, Inc

Supercharge your queues with a profesional front end and optional Redis hosting:

  • Get a complete overview of all your queues.
  • Inspect jobs, search, retry, or promote delayed jobs.
  • Metrics and statistics.
  • and many more features.

Sign up at Taskforce.sh

The gist

Install:

$ yarn add bullmq

Add jobs to the queue:

import { Queue } from 'bullmq';

const queue = new Queue('Paint');

queue.add('cars', { color: 'blue' });

Process the jobs in your workers:

import { Worker } from 'bullmq';

const worker = new Worker('Paint', async job => {
  if (job.name === 'cars') {
    await paintCar(job.data.color);
  }
});

Listen to jobs for completion:

import { QueueEvents } from 'bullmq';

const queueEvents = new QueueEvents('Paint');

queueEvents.on('completed', jobId => {
  console.log('done painting');
});

queueEvents.on('failed', (jobId, err) => {
  console.error('error painting', err);
});

This is just scratching the surface, check all the features and more in the official documentation

Thanks

Thanks for all the contributors that made this library possible, also a special mention to Leon van Kammen that kindly donated his npm bullmq repo.

About

BullMQ - Premium Message Queue for NodeJS based on Redis

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 90.6%
  • Lua 9.4%