RocketMQ概念模型(good)

匿名 (未验证) 提交于 2019-12-03 00:20:01

转载:https://blog.csdn.net/binzhaomobile/article/details/73332463

RocketMQ概念模型

一 前言

二 概念模型

1 Topic


2 Broker,Producer和Consumer



3 Topic,Topic分片和Queue (重要)


对应上图,TopicA有3个Topic分片,分布在Broker1,Broker2和Broker3上,TopicB有2个Topic分片,分布在Broker1和Broker2上,TopicC有2个Topic分片,分布在Broker2和Broker3上。

每个Topic分片等分的Queue的数量可以不同,由用户在创建Topic时指定。

RocketMQ 在进行Topic分片以后,已经达到水平扩展的目的了,为什么还需要进一步切分为Queue呢?


Rocket MQ的负载均衡策略规定:Consumer数量应该小于等于Queue数量如果Consumer超过Queue数量,那么多余的Consumer 将不能消费消息。

这样的分配规则,每个Queue只有一个消费者,可以避免消费过程中的多线程处理和资源锁定,有效提高各Consumer消费的并行度和处理效率。


标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!