3 ms·
Could you expand on this a bit more? I am curious.
by kumarvvr 3y ago
Could you expand on this a bit more? I am curious.
- vorpalhex 3y agoNATs has a decent-ish guide here: https://docs.nats.io/nats-concepts/overview/compare-nats https://docs.nats.io/nats-concepts/overview/compare-nats A few things they get wrong mostly about Rabbit: + RabbitMQ does support replay, and also has a memory only mode which will support persistance in a cluster + RabbitMQ doesn't have that sensitive of a latency between cluster members (no more sensitive than NATS in some setups). + RabbitMQ also supports Prometheus A good (but incomplete) rule of thumb: + Kafka is a distributed Append-Only-Log that looks like a message bus. It allows time travel but has very simple server semantics. + RabbitMQ is a true message broker with all the abilities and patterns therein. It comes with more complexity. + NATs is primarily a straight forward streaming messaging platform. Also consider Redis' message queue mode, zeromq, mqtt brokers (Eclipse Mosquitto) and the option of just not using a message broker/queue system. Even as someone who really likes the pubsub pattern, there's a good chance you don't need it and you may be heading to a distributed monolith antipattern.
- gunapologist99 3y ago> distributed monolith antipattern Beauty is in the eye of the beholder, I guess. (I would definitely not consider a distributed monolith an antipattern) Also wanted to add NSQ to your very good list.
- mherdeg 3y agoThanks for this link -- really interesting. I like the suggestion to rethink whether you actually need to be doing asynchronous computing with a message broker/queue/stream or whether you can represent your work another way.
- rcombatwombat 3y agoAlso see https://www.youtube.com/watch?v=C4BnJ5QLeTY https://www.youtube.com/watch?v=C4BnJ5QLeTY