Edit: I did see the comparisons page, but.. well, there's more to life than Rabbit and Kafka!
Edit: I did see the comparisons page, but.. well, there's more to life than Rabbit and Kafka!
Well, you know, there is the "Comparison With Alternative Systems" page[1]. :-)
Sadly it doesn't include NATS in the comparison. I would have been interested to see that. But the usual suspects (Rabbit & Kafka) are given a mention.
[1] https://bloomberg.github.io/blazingmq/docs/introduction/comp...
That said, there are indeed plenty of commercial and noncommercial alternatives, so now that it's been published I'm sure there will be some thorough people making comparisons soon!
RabbitMQ was probably avoided because nobody wanted to learn Erlang.
Also, R&D had a lot of experience building message oriented middleware "from scratch" in a low overhead high availability way, so first instinct was probably to start hacking in C++.
Nowadays it might be the case that some teams within Bloomberg need the performance or would rather have a bespoke solution instead of spending on migrating to something else off the shelf.
Keep in mind that this is a company that has its own implementation of most of the C++ standard library.