目录
本文来源:极客时间vip课程笔记
一、引入前提
- 我在看《【基础篇-消息队列】——消息模型中的主题和队列有什么区别》这节课的留言时发现,不少同学对 RocketMQ 和 kafka 的消息模型理解的还不是很透彻,这两个消息队列产品的消息模型是一样的,我在这里,再把这个模型相关的概念,通过一个例子详细地说一说。
二、通过示例详解 RocketMQ 和 Kafka 的消息模型
2.1、示例说明
- 假设有一个主题 MyTopic,我们为主题创建 5 个队列,分布到 2 个 Broker 中。
- 先说消息生产这一端,假设我们有 3 个生产者实例:Produer0,Produer1 和 Producer2。
2.2、消息生产端
- 假设消息生产端有 3 个生产者实例:Produer0,Produer1 和 Producer2。
- 这 3 个生产者是如何对应到 2 个 Broker 的,又是如何对应到 5 个队列的呢?这个很简单,不用对应,随便发。每个生产者可以在 5 个队列中轮询发送,也可以随机选一个队列发送,或者只往某个队列发送,这些都可以。比如 Producer0 要发 5 条消息,可以都发到队列 Q0 里面,也可以 5 个队列每个队列发一条。