5 ms·
I'm a bit confused about the current state of ZeroMQ and its relatives. There's nanomessage, which for some reason didn't pan out and is superseded by nng(?), b
by herrkanin 6y ago
I'm a bit confused about the current state of ZeroMQ and its relatives. There's nanomessage, which for some reason didn't pan out and is superseded by nng(?), but ZMQ still seem to be the most popular option. If I were to pick a broker-less message queue today, what should I pick?
- fuzzybear3965 6y agoI'm planning on using core NATS (as opposed to NATS streaming) for a lot of my message queuing. A brokered message queue is the same as a brokerless message queue where message forwarding (brokering) is not performed...
- WnZ39p0Dgydaz1 6y agoMy understanding: Pick zmq if you want something safe and battle-tested with good client library support. Pick nng if you want to be at the forefront of new tech or need some of its unique features over zmq (https://nanomsg.org/documentation-zeromq.html https://nanomsg.org/documentation-zeromq.html). Performance-wise nng still seems like it's inferior to zmq because it's not as heavily optimized. There are lots of performance-related unresolved Github issues. nanomsg is not an option because it's essentially abandoned. I've been using nng for a project of mine and I'm happy with it so far.
- metadaemon 6y agoWould you say either is something you would put in a decently scaled production system?
- WnZ39p0Dgydaz1 6y agozmq is used in a many large-scale production systems. It's definitely safe to use and has been stable for a long time. nng is relatively new. Personally I have not had any issues with it. I'd look through the open Github issues and see if you can find any dealbreakers. The deciding factor may be language/library support. I would also classify it as "safe to use in production" though.
- Supermancho 6y agoUsing ZMQ (from C) at high volume, we found it dropped data, so we abandoned it.
- mycelium 6y agoWhat did you replace it with?
- Supermancho 6y agoDirect writes locally to ebs and then stream to S3 and async collation after.
- ndesaulniers 6y agonanomsg was abandoned? I know the previous maintainer moved on to nng, but no one is maintaining it now?
- WnZ39p0Dgydaz1 6y agoI don't know. Maybe it's not abandoned and maintained by someone. I was using the word loosely as in "focus has moved to nng" and it makes little sense to use nanomsg for a new project at this point. In my experience, if the core contributor moves on and it's not a company, it's only a matter of time before it's fully abandoned. Better to get away from it soon ;)
- ndesaulniers 6y agoBut gdamore is still maintaining nanomsg https://github.com/nanomsg/nanomsg/commits/master https://github.com/nanomsg/nanomsg/commits/master. gdamore took over from sustrik a long time ago.