Registry / messaging / queue-schedule

queue-schedule

JSON →
library3.0.6jsnpmunverified

Queue producer and consumer tools with Kafka support, including both node-rdkafka and kafkajs adapters. Version 3.0.6 (latest) is stable with TypeScript types included. Designed to address Kafka's lack of slow-consumption support by providing a scheduling layer for delayed/controlled task processing. Key differentiators: dual adapter support (node-rdkafka/kafkajs), built-in delay and pause mechanisms, event-based error handling. Release cadence appears low (last update not recent). Not actively maintained (last commit 2021). Alternative to manual Kafka consumer management with simpler API.

npm install queue-schedule
INSTALL
IMPORT
SIG · QUEUE-SCHEDULE
Q
queue-schedule
messagingjavascriptv3.0.6
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

RdKafkaProducer
✓ const { RdKafkaProducer } = require('queue-schedule');
✗ import { RdKafkaProducer } from 'queue-schedule'; // CJS module does not support named ESM imports
Package uses CommonJS; no default export. Named import via destructuring.
RdKafkaConsumer
✓ const { RdKafkaConsumer } = require('queue-schedule');
✗ const RdKafkaConsumer = require('queue-schedule').RdKafkaConsumer; // works but verbose
RdKafkaConsumer is an EventEmitter subclass; listen to its events.
KafkaJsProducer
✓ const { KafkaJsProducer } = require('queue-schedule');
✗ const { KafkaJsProducer } = require('queue-schedule/kafkajs'); // wrong path
Exported from main entry; no subpath imports.
KafkaJsConsumer
✓ const { KafkaJsConsumer } = require('queue-schedule');
✗ const { KafkaJsConsumer } = require('kafkajs'); // wrong package
Part of queue-schedule, not kafkajs itself.

Demonstrates creating a KafkaJs producer and consumer with queue-schedule, sending a message and processing it.

const { Kafka } = require('kafkajs'); const { KafkaJsProducer, KafkaJsConsumer } = require('queue-schedule'); const client = new Kafka({ brokers: [process.env.KAFKA_BROKER ?? 'localhost:9092'], }); const producer = new KafkaJsProducer({ topic: 'test-topic', client, }); producer.addData({ hello: 'world' }, {}, (err) => { if (err) console.error('producer error', err); else console.log('data sent'); }); const consumer = new KafkaJsConsumer({ name: 'my-consumer', client, topic: 'test-topic', consumerOption: { groupId: 'my-group', fromBeginning: true }, doTask: (messages, callback) => { console.log('received', messages.length, 'messages'); callback(); }, readCount: 1, pauseTime: 500, });
Debug
Known issues
breakingVersion 3.0.0 removed support for kafka-node; use node-rdkafka or kafkajs.
fix
Migrate to node-rdkafka or kafkajs adapters.
affects: >=3.0.0
deprecatedThe package is in maintenance mode; no active development since 2021.
fix
Evaluate alternatives if needing long-term support.
affects: >=3.0.0
gotchaEvent names like 'EVENT_CONSUMER_ERROR' are string constants; typos cause silent failures.
fix
Always reference via static property: RdKafkaConsumer.EVENT_CONSUMER_ERROR
affects: >=1.0.0
gotchadoTask callback must be called; otherwise consumer stalls.
fix
Always invoke callback() after processing messages.
affects: >=1.0.0
gotchaconsumerOption properties must match KafkaJS consumer config exactly; no validation.
fix
Refer to KafkaJS documentation for valid options.
affects: >=3.0.0
Errors
Common errors & fixes
TypeError: Cannot read properties of undefined (reading 'HighLevelProducer')
node-rdkafka not installed or incorrect import
fix
npm install node-rdkafka and ensure version compatibility.
Error: Cannot find module 'queue-schedule'
Package not installed
fix
npm install queue-schedule
TypeError: producer.addData is not a function
Using wrong import (e.g., default import instead of named)
fix
Use const { KafkaJsProducer } = require('queue-schedule');
Upgrade
Version history
3.0.6latest on npm
Audit
Dependencies
node-rdkafkaoptionalRequired for RdKafkaProducer and RdKafkaConsumer usage
kafkajsoptionalRequired for KafkaJsProducer and KafkaJsConsumer usage
Agent activity
19 hits · last 30 days
node
14
Bingbot
1
OpenAI (training)
1
Resources
queue-schedule — npm install queue-schedule · libregistry