Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Difference between Kafka and ActiveMQ [closed]

Tags:

I have been working on Active MQ for quite some time and familiar with the Active MQ architecture. Recently I have been hearing a lot about Kafka as a messaging system. What advantages does it have over Active MQ and other messaging system? Is it just another Big data buzz word? Also is kafka suitable for zero loss messaging system?

like image 857
zer0Id0l Avatar asked Apr 06 '14 17:04

zer0Id0l


People also ask

Is Kafka better than ActiveMQ?

Kafka is way faster than ActiveMQ. It can handle millions of messages per sec. ActiveMQ supports both message queues and publishes/subscribe messaging systems. On the other hand, Kafka is based on publish/subscribe but does have certain advantages of message-queues.

Is AMQ Kafka?

The Red Hat® AMQ streams component is a massively scalable, distributed, and high-performance data streaming platform based on the Apache Kafka project. It offers a distributed backbone that allows microservices and other applications to share data with high throughput and low latency.

Is ActiveMQ push or pull?

ActiveMQ will push as many messages to the consumer as fast as possible, where they will be queued for processing by an ActiveMQ Session. The maximum number of messages that ActiveMQ will push to a Consumer without the Consumer processing a message is set by the pre-fetch size.

What is difference between JMS and ActiveMQ?

What Is the Difference Between JMS and ActiveMQ? ActiveMQ is a JMS provider. A JMS provider forms the software framework for facilitating the use of JMS concepts inside an application. A single node of ActiveMQ which allows clients to connect to it and use these messaging concepts is called an “ActiveMQ Broker.”


1 Answers

This is too broad to discuss but in my opinion the most important factor about Kafka over ActiveMQ is the throughput. From the wiki page

Kafka provides an extremely high throughput distributed publish/subscribe messaging system. Additionally, it supports relatively long term persistence of messages to support a wide variety of consumers, partitioning of the message stream across servers and consumers, and functionality for loading data into Apache Hadoop for offline, batch processing.

Also is kafka suitable for zero loss messaging system?

In very brief kafka Guarantees these following :
1) Messages sent by a producer to a particular topic partition will be appended in the order they are sent.
2) For a topic with replication factor N, it will tolerate up to N-1 server failures without losing any messages committed to the log.

like image 192
user2720864 Avatar answered Oct 01 '22 01:10

user2720864