Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Node.js
  3. RedisSMQ

RedisSMQ

MITTypeScriptv10.1.2

A simple high-performance Redis message queue for Node.js with multiple queue types, scheduling, and a web UI.

GitHubGitHub
670 stars66 forks0 contributors

What is RedisSMQ?

RedisSMQ is a high-performance message queue system built on Redis for Node.js applications. It enables reliable background job processing, task scheduling, and communication between microservices with features like retries, multiple queue types, and a built-in scheduler. It solves the need for a scalable and simple message queue that leverages Redis's speed and atomic operations.

Target Audience

Node.js developers building applications that require background job processing, microservices communication, or task scheduling with reliability and performance. It's also suitable for teams needing a self-hosted message queue with monitoring capabilities.

Value Proposition

Developers choose RedisSMQ for its simplicity, high performance through Redis atomic scripts, and comprehensive feature set including scheduling, multiple queue types, and a web UI. It offers a clean TypeScript-first API with dual promise/callback support, making it flexible and easy to integrate.

Overview

RedisSMQ: A high-performance Redis message queue for Node.js

Use Cases

Best For

  • Processing background jobs like sending emails or generating reports
  • Scheduling tasks with automatic retries and CRON expressions
  • Enabling communication between microservices in a distributed system
  • Handling real-time event processing for IoT or gaming applications
  • Managing high-throughput message queues with batch acknowledgments
  • Self-hosting a message queue with a web dashboard for monitoring

Not Ideal For

  • Polyglot microservices architectures requiring message queue access from multiple programming languages
  • Teams preferring fully managed cloud services without self-hosted Redis infrastructure
  • Simple, single-threaded Node.js scripts where introducing Redis adds unnecessary complexity
  • Applications needing persistent queue storage independent of Redis's in-memory model for long-term data retention

Pros & Cons

Pros

High-Throughput Performance

Uses atomic Lua scripts and batch acknowledgments to minimize Redis calls, achieving up to 99% fewer Redis operations as documented in the performance guide.

Built-in Scheduling

Supports delays, CRON jobs, and repeating messages natively, eliminating the need for external schedulers for task management.

Comprehensive Management Tools

Includes a Web UI and REST API with OpenAPI documentation for real-time monitoring, queue control, and message inspection.

Flexible Developer API

Offers dual promise and callback support with full TypeScript typing, making it adaptable to various coding styles and modern Node.js workflows.

Reliable Message Delivery

Ensures processing with configurable retries, TTL, and consumption timeouts, providing fault tolerance for critical background jobs.

Cons

Redis Dependency and Setup

Requires a separate Redis instance and client library (ioredis or @redis/client), adding operational overhead and potential single points of failure.

Node.js Ecosystem Lock-in

Limited to Node.js applications, making it unsuitable for polyglot environments without additional bridging through the REST API, which may introduce latency.

Complex Initialization Process

Demands explicit Redis client configuration and multi-package installation with version matching, increasing setup time compared to simpler queue solutions.

Stability Concerns with 'next' Branch

Primary documentation targets the 'next' branch for new features, which may introduce breaking changes or bugs not present in the stable 'master' branch.

Frequently Asked Questions

Quick Stats

Stars670
Forks66
Contributors0
Open Issues4
Last commit3 days ago
CreatedSince 2017

Tags

#high-performance#redis#message-queue#real-time-processing#distributed-systems#rest-api#message-queues#nodejs#typescript#dead-letter-queue#background-jobs#microservices#node-js#web-ui#delayed-jobs#task-scheduling

Built With

i
ioredis
T
TypeScript
N
Node.js
R
Redis

Included in

Node.js65.5k
Auto-fetched 9 hours ago

Related Projects

BullBull

Premium Queue package for handling distributed jobs and messages in NodeJS.

Stars16,253
Forks1,407
Last commit3 days ago
agendaagenda

Lightweight job scheduling for Node.js

Stars9,703
Forks848
Last commit1 month ago
bullmqbullmq

BullMQ - Message Queue and Batch processing for NodeJS, Python, .NET, Elixir, Rust and PHP based on Redis or PostgreSQL

Stars9,379
Forks680
Last commit11 hours ago
bee-queuebee-queue

A simple, fast, robust job/task queue for Node.js, backed by Redis.

Stars4,037
Forks221
Last commit12 hours ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub