bullmq-specialist

Implements Redis-backed job queues and background processing with BullMQ in Node.js applications.

Updated Aug 11, 2026
One-click install
npx skills add https://github.com/DucCuong159/Realtime-chatapp --skill bullmq-specialist-duccuong159
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: bullmq-specialist
Source: https://github.com/DucCuong159/Realtime-chatapp/tree/main/.agent/skills/bullmq-specialist
Command: npx skills add https://github.com/DucCuong159/Realtime-chatapp --skill bullmq-specialist-duccuong159

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires bullmq, ioredis, @bull-board/api, @bull-board/express.

What problem does it solve? Offloading slow or unreliable work from HTTP request handlers into background jobs is error-prone: jobs get lost on deploys, retries cause thundering herds, and Redis misconfiguration silently breaks workers. This Skill provides production-tested BullMQ patterns for queues, workers, scheduling, and monitoring in Node.js/TypeScript. ## Core Features & Use Cases - Queue & Worker Setup: Production-ready queue configuration with exponential backoff retries, concurrency limits, rate limiting, and the required maxRetriesPerRequest: null Redis connection setting. - Delayed, Repeatable & Dependent Jobs: Schedule one-off delayed jobs, cron-based repeatable jobs with explicit timezones, and multi-step job flows with parent-child dependencies via FlowProducer. - Operational Safety: Graceful shutdown on SIGTERM/SIGINT, Bull Board dashboard integration, and validation checks that flag missing stalled/failed handlers, oversized payloads, and missing backoff strategies. - Use Case: You need to send transactional emails without blocking API responses. Create an emails queue with rate limiting, add jobs fire-and-forget from your route handler, and let a worker with concurrency 5 process them with exponential backoff retries. ## Quick Start Set up a BullMQ email queue with a worker, exponential backoff retries, and graceful shutdown in my Node.js app.

Frequently Asked Questions about bullmq-specialist

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I set up a BullMQ queue with retries in Node.js?

Create a Queue with defaultJobOptions specifying attempts and an exponential backoff strategy, then attach a Worker with a concurrency limit. The Redis connection must set maxRetriesPerRequest to null or workers will stop on connection issues.

How to schedule recurring jobs with BullMQ?

Use the repeat option with a cron pattern when adding a job, and always specify an explicit timezone to avoid DST drift. Remove scheduled jobs later with queue.removeRepeatable using the same pattern and timezone.

Why does my BullMQ worker stop processing after Redis reconnects?

This happens when the ioredis connection lacks maxRetriesPerRequest: null, which BullMQ requires for proper reconnection handling. Also set enableReadyCheck to false on the shared connection.

Can BullMQ run jobs that depend on other jobs completing?

Yes, use FlowProducer to create parent-child job flows where the parent waits for all children to finish. Children can run on different queues, enabling multi-stage pipelines like order processing across inventory, payments, and notifications.

When should I not use BullMQ for background jobs?

Avoid BullMQ when you cannot run Redis, such as serverless or edge environments where a service like Upstash QStash fits better. For long-running sagas with compensation logic, a workflow orchestrator like Temporal is more appropriate.