-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月剛剛添加了「完全一次語義」,這是另一個區別。