rabbitMQ和kafka的區別


首先,rabbitMQ是一款開源,ERlang編寫的,基於AMQP協議的,消息中間件;

它可以做到:解耦、異步、削瘋限流;

掛機可能造成穩定性問題;加入系統的復雜性;

如何保證rabbitMQ的高可用,搭建集群;

如何做到重復消費:確保消息唯一性,做唯一標識;

 

然后,kafka是apache一款分布式發布訂閱消息系統。

它能做到緩沖和削峰、解耦、冗余。

 

區別:

從消息確認來說

rabbitMQ以brocker代理為中心,有消息確認機制;

kfka:以consumer為中心,沒有消息確認機制。

從批量處理來說

rabbitMQ支持事務,不支持批量操作,吞吐量小

Kafka:內部消息是可以做批量處理,消息處理效率高,吞吐量高

從負載均衡來說

rabbitMQ不支持負載均衡,需要loadbalance支持

kafka的采用zK來協調負載均衡問題,zk通過輪詢的方式發送消息到brocker上;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM