-2

卡夫卡和RabbitMQ是众所周知的邮件经纪人。我想用Spring Boot构建一个微服务,看起来Spring Cloud为他们提供了开箱即用的解决方案,作为事实上的选择。我知道有一些RabbitMQ的trayectory有很多支持。卡夫卡属于阿帕奇,所以它应该是好的。那么RabbitMQ和Kafka之间的主要区别是什么?考虑到这将与Spring Cloud一起使用。请分享您的经验和标准。提前致谢。卡夫卡vs兔MQ的优缺点

回答

4

我当然不会认为卡夫卡是轻量级的。 Kafka依赖于ZooKeeper,因此您需要将ZooKeeper也投入到您的堆栈中。

卡夫卡是pubsub,但您可以重新阅读邮件。如果您需要处理大量数据,Kafka表现会更好,并且与其他大数据工具的协同效果会更好。它专门针对大数据。

+0

那么RabbitMQ呢?优点和缺点请记住。 – EliuX

1

三个应用层面的区别是:

  1. 卡夫卡支持重读消费的消息,而RabbitMQ的 没有。

  2. 卡夫卡支持分区消息的排序而RabbitMQ的 一些约束支持它如一个交换路由 到队列,一个队列,一个消费者到队列。

  3. 卡夫卡用于快速发布数据到分区比rabbitMQ。
1

卡夫卡不仅仅是一个酒吧/子消息平台。它还包括用于数据集成(Kafka Connect)和流处理(Kafka Streams)的API。与仅使用较低级别的pub/sub消息API相比,这些更高级别的API使开发人员的工作效率更高。

此外,卡夫卡在2017年6月刚刚添加了“完全一次语义”,这是另一个区别。