1、rabbitmq的架构

  • broker:每个节点运行的服务程序,功能为维护该节点的队列的增删以及转发队列操作请求。
  • master queue:每个队列都分为一个主队列和若干个镜像队列。
  • mirror queue:镜像队列,作为master queue的备份。在master queue所在节点挂掉之后,系统把mirror
    queue提升为master queue,负责处理客户端队列操作请求。注意,mirror
    queue只做镜像,设计目的不是为了承担客户端读写压力。

Kafka与RabbitMq的对比
2、Kafka的架构
把一个队列的单一master变成多个master,一条消息要么发送到这个master queue,要么发送到另外一个master queue。
这里面的每个master queue 在Kafka中叫做Partition,即一个分片。一个队列有多个主分片,每个主分片又有若干副分片做备份,同步机制类似于RabbitMQ。

3、两者区别
吞吐量较低:Kafka和RabbitMQ都可以。
吞吐量高:Kafka。

相关文章: