4 ms·
Very different. Pulsar is primarily a Kafka competitor. - it is much more performant than RabbitMQ - it's a commit log as well, not just a pub-sub system, ie.
by sz4kerto 7y ago
Very different. Pulsar is primarily a Kafka competitor.
- it is much more performant than RabbitMQ
- it's a commit log as well, not just a pub-sub system, ie. it is a good candidate as the storage backend for event sourcing
- it supports geodistributed and tiered storage (eg. some data on NVMe drives, some on a coldline storage)
- it's persistent, not in-memory (primarily)
.. and so on.
- EGreg 7y agoWhat about ZeroMQ? Why use RabbitMQ and Kafka if you can use ZeroMQ? Meaning, isn’t it far more performant and distributed? Maybe I am missing something here.
- Joeri 7y agoMessage queues and message logs do different things. The idea of the log is that subscribers can show up after the log is written and read or reread it from the beginning. In an event sourced architecture you use the log as the source of truth and all consumers can replay the log against a local store to reconstruct a view of the system’s state. You also can use a log for pubsub, but if that’s all you need one of the MQ solutions is usually a better fit.
- sz4kerto 7y ago> Why use RabbitMQ and Kafka if you can use ZeroMQ? They are totally different, you're comparing apples with oranges. ZeroMQ gives you basic, very fast tooling to communicate between distributed processes. ZeroMQ does not provide tooling for e.g. maintaining a strictly ordered, multi-terabyte event log. And so on.
- EGreg 7y agoYes but isn’t this a bit like comparing git / bitkeeper vs subversion / perforce? Basically, one is decentralized and you can set up a massively parallel architecture, with eg each topic or subthread having its own pubsub. The other is a monolithic centralized pubsub architecture. You could argue that git in large institutional projects converges to a monolithic repo so at that point it’s less efficient even than svn. But for most use cases, ZeroMQ would allow far more flexible distributed systems topologies and solutions. No? Edit: HN and Google are both awesome: https://news.ycombinator.com/item?id=9634925 https://news.ycombinator.com/item?id=9634925
- frogger23123 7y ago> You could argue that git in large institutional projects converges to a monolithic repo so at that point it’s less efficient even than svn. Not true. Facebook and Google do not use Git. Microsoft does not use vanilla Git for their monorepo. They created this extension to make it scalable https://en.wikipedia.org/wiki/Virtual_File_System_for_Git https://en.wikipedia.org/wiki/Virtual_File_System_for_Git
- ryeguy 7y agoZeromq is just a bit of sugar on top of tcp sockets. It isn't a message queue or anything close. You would be wasting a ton of time reimplementing a lot of basic features like retries, persistence, service discovery, dead letter queues, priority, and a ton of other stuff.
- TuringNYC 7y agoI went to https://pulsar.apache.org https://pulsar.apache.org but didnt find a "Why Pulsar and not Kafka" -- is there an answer to that, or is this another Kafka competitor with the same strengths and not a specific differentiator?
- cbartholomew 7y agoHere is a two-part blog post I wrote on why Pulsar and not Kafka: https://kafkaesque.io/5-more-reasons-to-choose-apache-pulsar-over-kafka/ https://kafkaesque.io/5-more-reasons-to-choose-apache-pulsar...
- richdougherty 7y agoThanks! And Part 1 seems like a good place to start: https://kafkaesque.io/7-reasons-we-choose-apache-pulsar-over-apache-kafka/ https://kafkaesque.io/7-reasons-we-choose-apache-pulsar-over...
- dickjocke 7y agoWhy is one Apache providing competing with another one?
- spelunker 7y agoPlenty competing Apache projects exist, Pulsar and Kafka aren't unique in that regard. I don't think Apache cares if it's maintaining similar projects.