Comments (3)
@AmreeshTyagi Thank you for considering this library for your future project and for sharing your benchmarks. This library is indeed focused on performance and simplicity. My advise to you, although it may not be in time, is to try it. Also you should consider the capabilities and the features the library provides. It is not a drop-in replacement for RabbitMQ in terms of features. I believe queuing a message and delivering it later to a consumer should be a simple task with minimal resource requirements and without introducing complex layers to your application. That is the main reason why this library was created. If you have any issue or a question, I will be glad to help you.
from redis-smq.
Throwing my 2cts here; I'm writing this as I've been dealing with both bull and smq - and we don't often celebrate great work.
Bull never really worked (at least for me) - I have an application that deals with ~10k messages/sec and I had a lot of memory issues with it (my consumer / producers would stop working after a couple of hours - with memory going up without apparent reason).
As I used an onion architecture (fortunately), I was able to switch from bull to redis-smq in an afternoon and all the issues were solved.
Only issue I had with redis-smq was the fact that version 7 didn't support point-2-point, but now it does. Migrating to v8 now and so far no issues, migration has been silky smooth.
Anyway, can't recommend redis-smq enough, it's probably the best piece of software to manage microservices with node (and bun also!). Very great work @weyoss !
EDIT: While i'm at it, a bit off-topic (but not worth the noise of an issue IMO) - I would love to have a documentation on v8 about cleanup (Best practice about closing producer / queue / consumer ? which functions ? should I .cancel()
consumer before actually closing it ?)
from redis-smq.
@wackfx It's my pleasure!
Thank you for using redis-smq
and also for sharing your delightful experience with the message queue. Your feedback is highly appreciated.
Sure. I will try to clarify the points you highlighted and in general the cleanup process and include it into the documentation.
from redis-smq.
Related Issues (20)
- LockManagerAcquireError: could not acquire a lock. HOT 3
- consumer for all queues HOT 2
- Managed redis connection keeps throwing error HOT 3
- what is difference between setConsumeTimeout and setTTL HOT 1
- Configure retry/consume parameters on consumer side HOT 4
- Config is ignored HOT 2
- Question about Features which BullMQ Pro has (Batching, Concurrency, Sandboxed Worker and Message Handlers) HOT 3
- SyntaxError: Invalid or unexpected token on server start HOT 1
- Delete a message/process in a queue HOT 1
- Fanout to multiple subscribers question HOT 7
- Implement Reliable Pub/Sub pattern HOT 1
- Configuration is not present in the redis-smq HOT 2
- Question about QueueManager.createInstance() initialisation HOT 1
- Support for iovalkey (Valkey node client)
- [Question] How to avoid duplicated tasks? HOT 6
- LockManagerExtendError: Acquired lock could not be extended HOT 3
- random retryDelay HOT 4
- [Feature] Support option for a missing interval in the scheduler. HOT 4
- How to delete message in consumer HOT 4
- Error: ENOENT: no such file or directory, open '../lua/zpophgetrpush.lua HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from redis-smq.