Need advice about which tool to choose?Ask the StackShare community!
RSMQ vs Sandglass: What are the differences?
Developers describe RSMQ as "A lightweight message queue for Node.js that requires no dedicated queue server. Just a Redis server". tl;dr: If you run a Redis server and currently use Amazon SQS or a similar message queue you might as well use this fast little replacement. Using a shared Redis server multiple Node.js processes can send / receive messages. On the other hand, Sandglass is detailed as "Distributed, scalable, persistent time-sorted message queue". A distributed, horizontally scalable, persistent, time ordered message queue. Developed to support asynchronous tasks and message scheduling which makes it suitable for usage as a task queue.
RSMQ and Sandglass can be primarily classified as "Message Queue" tools.
Some of the features offered by RSMQ are:
- Lightweight: Just Redis and ~500 lines of javascript.
- Guaranteed delivery of a message to exactly one recipient within a messages visibility timeout.
- Received messages that are not deleted will reappear after the visibility timeout.
On the other hand, Sandglass provides the following key features:
- Horizontal scalability
- Highly available
- Persistent storage
RSMQ and Sandglass are both open source tools. Sandglass with 1.52K GitHub stars and 40 forks on GitHub appears to be more popular than RSMQ with 1.07K GitHub stars and 78 GitHub forks.
Pros of RSMQ
- Simple, does one thing well2
- Comes with a visibility timeout feature similar to AWS1
- Written in TypeScript1
- Written in Coffeescript1
- Backed by Redis1