栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

存储在Zookeeper或Kafka中的偏移量?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

存储在Zookeeper或Kafka中的偏移量?

Kafka的较早版本(0.9之前的版本)仅将偏移量存储在ZK中,而默认情况下,较新版本的Kafka则将偏移量存储在内部Kafka主题中

__consumer_offsets
(尽管较新的版本可能仍适用于ZK)。

向经纪人提供补偿的好处是,消费者不依赖ZK,因此客户只需要与经纪人对话,这简化了总体架构。另外,对于拥有大量用户的大型部署,ZK可能成为瓶颈,而Kafka可以轻松处理此负载(提交偏移量与编写主题是同一回事,并且Kafka在此处很好地扩展-
实际上,默认情况下

__consumer_offsets
会创建50个分区IIRC)。

我对NodeJS或kafka-node不熟悉-它取决于客户端实现如何提交偏移量。

长话短说:如果您使用经纪人

0.10.1.0
,则可以向topic提交补偿
__consumer_offsets
。但是,它是否实现此协议取决于您的客户端。

更详细地说,这取决于您的代理和客户端版本(以及您使用的是哪个消费者API),因为较旧的客户端可以与较新的代理通信。首先,您需要具有代理和客户端版本

0.9
或更高版本,才能将偏移量写入Kafka主题。但是,如果较旧的客户端连接到
0.9
代理,它将仍然向ZK提交补偿。

对于Java使用者:

这取决于用户使用什么:0.9之前有两个“老用户”,即“高级用户”和“低级用户”。两者都直接向ZK提交偏移量。从那时起

0.9
,这两个消费者合并为一个单一的消费者,称为“新消费者”(它基本上将两个老消费者的低级API和高级API统一了-
这意味着
0.9
存在三种类型的消费者)。新消费者对经纪人的承诺抵消(即内部的Kafka主题)

为了简化升级,还可以使用旧的使用者(自

0.9
)开始“双重提交”补偿。如果通过启用此功能
dual.commit.enabled
,则偏移量将提交给ZK和
__consumer_offsets
主题。这样,您就可以将偏移量从ZK转移到
__consumer_offsets
主题,同时从旧的使用者API切换到新的使用者API



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/413315.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号