用户登录

在控制中心,可以观察一下之前我们创建的这个 Phoenix 群组,在这个 Consumer 群组里有两个 Consumer,分别负责编号是 1 还有 0 的这两个分区。这两个分区都属于 Demo 这个 Topic。

在后面,观察一下 Current Offset,这个栏目的值就是这个 Consumer 当前使用的消息的 offset ,Consumer 会按顺序使用分区里的消息,用到哪条消息,它就会把这个消息的 offset 告诉给 kafka,这个 offset 的值会记录在一个 topic 里面。

这里显示这个 Consumer 的 current offset 是 8,后面这个 end offset 是这个分区最后一条消息的 offset,这里也是 8, 这就说明这个 consumer 没有落下这个分区里的消息。

下面这个 consumer 的 current offset 是 8 ,end offset 也是 8 。说明这个 consumer 也没有落下这个分区里的消息。

回到终端, 这里我们可以停掉之前用命令行创建的这两个 Consumer。 然后打开 Producer ,生产几条新的消息,苹果,西瓜,还有香蕉 。

再回到控制中心观察一下,你会发现,现在这个 current offset 的值是 8,不过在这个分区里,最后一条消息的 offset 是 9 , 这个分区的编号是 1,也就是 demo 这个 topic,编号是 1 的这个分区里有一条消息没有被使用。

下面这个 current offset 的值是 8 ,end offset 的值是 10, 这个分区的编号是 0,说明在 demo 这个 topic 的编号是 0 的这个分区里有两条消息没被使用。 也就是刚才我们生产的三条消息,有两条放在了编号是 0 的这个分区里了,有 1 条消息放在了编号是 1 的分区里了。

回到终端,重新启动一个 consumer, 这个 consumer 属于 phoenix 这个群组,这里输出了 phoenix 这个群组之前没有使用的 demo 这个 topic 里的消息。

因为 consumer 会提交它使用过的消息的 offset,它知道哪些消息没有被它使用过。所以这个 Consumer 在这里就输出了之前没被使用的这几条消息。

Consumer Offset:记住最近用过的消息《 Kafka:关键概念 》

统计

15260
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点