Apache Kafka is open source and can be used for free. It has very good log management and has a way to store the data used for analytics. Apache Kafka is very good if you have a high number of users. This tool has great scalability with high throughput and a very helpful supportive online community.
However, Kafka does not provide control over the message queue, so it is difficult to know whether messages are being delivered, lost, or duplicated. We would like to see more adapters for connecting to different systems made available. I think this would be a better product if the graphical user interface was easier. The manual calculations needed for this solution can be difficult. If the process was automated, it would be a much better product.
IBM MQ has a very strong reputation and is very robust with great stability. This solution is easy to use, simple to configure, and integrates well with our enterprise ecosystem and protocols. IBM ensures message delivery. You can track and trace everything. If a message doesn’t arrive at its destination, it will go back to the queue; this ensures no message is ever lost. This is a huge selling point for us.
IBM MQ does not handle huge volume very well, though. There are some limitations to the queues. If these limitations could be relaxed, it would be a better product for us. You have to license per application and installation, so scaling up can get very costly very quickly.
Apache Kafka is a cost-effective solution for high-volume, multi-source data collection. If you are in a high-growth trajectory and if total message accountability and tracking is not a huge issue for you, this solution may work well for you.
IBM MQ is a licensed product and can be very expensive, it also does not scale easily, which can be very problematic. IBM MQ requires a definite skillset that not many people have, which can be an issue for some and it affects the fast responsive support of this solution.
Head of Cloud Platform Development at a tech vendor with 501-1,000 employees
07 March 18
Depends on the use case requirements…
For most cases, I will recommend RMQ before IBM MQ…
There are certain cases of elevated security that might push the scale into IBM’s court.
Encryption of messages might be one of those cases.
Enhanced DR capabilities on the message queue level might be another…
The two case above are very specific edge cases and not typically solved by a queuing solution.
So I would go with RMQ almost all the time.
Well, I have experienced both. And What Can I say? Nowadays I would prefer Rabbit rather than IBM because Rabbit addressed very well the requirements, has a great throughput (Not as good as Kafka https://www.itcentralstation.com/products/apache-kafka?tid=il-q) and its free.
Also, it was a little bit easier to integrate (But that is not the main point), much easier to find online help to solve your daily problems.
IBM has licensed support but to solve daily problems I used to go to google but never found what I needed in a few minutes.