We performed a comparison between Apache Kafka and IBM MQ based on our users’ reviews in four categories. After reading all of the collected data, you can find our conclusion below.
Comparison Results: Both products are moderately easy to install, robust, and high-performing. The main advantage of Apache Kafka is that it is free of charge but still offers adequate technical support solutions.
"This is a system for email and other small devices. There has been a relay of transactions continuously over the last two years it has been in production."
"The stream processing is a very valuable aspect of the solution for us."
"It's very easy to keep to install and it's pretty stable."
"The processing power of Apache Kafka is good when you have requirements for high throughput and a large number of consumers."
"The most valuable feature is the documentation, which is good and clear."
"Apache Kafka is scalable. It is easy to add brokers."
"The main advantage is increased reliability, particularly with regard to data and the speed with which messages are published to the other side."
"The most valuable feature is that it can handle high volume."
"The solution is very easy to work with."
"Whenever payments are happening, such as incoming payments to the bank, we need to notify the customer. With MQ we can actually do that asynchronously. We don't want to notify the customer for each and every payment but, rather, more like once a day. That kind of thing can be enabled with the help of MQ."
"I haven't seen any severe issues related to it. Most of the time it's running. That is the advantage of IBM MQ."
"This product has good security."
"A stable and reliable software that offers good integration between different systems."
"Integrates between distributed systems: For example, it can help integrate processing between mainframe, client-server, web-based applications by integrating the messages, supporting Service Oriented Architecture."
"I have found that the solution scales well."
"I like the MQ's simplicity and rock-solid stability. I've never experienced a failure in two decades caused by the product itself. It has only failed due to human error."
"Kafka is a nightmare to administer."
"More adapters for connecting to different systems need to be available."
"I suggest using cloud services because the solution is expensive if you are using it on-premises."
"Data pulling and restart ability need improving."
"I would like to see an improvement in authentication management."
"The GUI tools for monitoring and support are still very basic and not very rich. There is no help in determining a shard key for performance."
"Apache Kafka has performance issues that cause it to lag."
"In Apache Kafka, it is currently difficult to create a consumer."
"IBM HQ's scalability isn't the best."
"The initial setup is difficult. Creating your own cluster is difficult. Working with cluster repositories is difficult. Issue management with IBM MQ is difficult."
"The solution isn't free. There are other solutions, like RabbitMQ, which are open source and absolutely free to use. It's one reason we are moving away from IBM."
"It would be nice if we could use the cluster facilities because we are doing active/passive configuration use."
"We have had scalability issues with some projects in the past."
"MQ needs instruments for connection with new modern queues like Kafka or RabbitMQ."
"There could be a better front-end GUI interface for us, where we can see things more easily."
"The GUI part could be better."
Apache Kafka is ranked 1st in Message Queue (MQ) Software with 76 reviews while IBM MQ is ranked 2nd in Message Queue (MQ) Software with 158 reviews. Apache Kafka is rated 8.0, while IBM MQ is rated 8.4. The top reviewer of Apache Kafka writes "Great access to multiple devices, with stability, at an affordable price". On the other hand, the top reviewer of IBM MQ writes "Offers the ability to batch metadata transfers between systems that support MQ as the communication method". Apache Kafka is most compared with Amazon SQS, Red Hat AMQ, Anypoint MQ, PubSub+ Event Broker and VMware RabbitMQ, whereas IBM MQ is most compared with ActiveMQ, VMware RabbitMQ, Red Hat AMQ, Amazon SQS and PubSub+ Event Broker. See our Apache Kafka vs. IBM MQ report.
See our list of best Message Queue (MQ) Software vendors.
We monitor all Message Queue (MQ) Software reviews to prevent fraudulent reviews and keep review quality high. We do not post reviews by company employees or direct competitors. We validate each review for authenticity via cross-reference with LinkedIn, and personal follow-up with the reviewer when necessary.
It is like comparing apples to oranges. Mq is focus on enabling the communication between two different programs in different systems and guaranteeing the delivery of the messages where Kafka has specialized on the generation of events by a source system that are catch by "listener" programs.
MQ is point to point, if the receiving program reads the message from the queue, it dissapears, in the case of Kafka as the event is read by a "listener" program, the event is still there as there could be more then one program that has subscribed to the so called "topic".
So, as mention in another answer, it depends from the use case. If you have for example a front end program that communicated with a very bad bandwith to another program and you have to send critical data, the best solution could be MQ. If you have an "card stolen" application that needs to alert different systems, you could publish the "stolen" event in the front end app and have any number of system listening to this event.
Of course it is also valid the argument that Kafka is open source and IBM MQ is propietary but if you are considering a production environment you can find different vendors (including IBM) that provide products based on Kafka open source.
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.
Conclusion
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.