当前位置: 首页 > 知识库问答 >
问题:

Kafka增加新的消费者并不能重新平衡负荷

解宏扬
2023-03-14

我有一个关于2个代理上的3个分区的主题。(Kafka版本:0.8.1)

使用不同的用户guid(如:FC42B34DD7658503E040970A2C437358)作为分区密钥批量添加消息。(约10K条消息)

在加载消息时,我有一个正在运行的消费者(consumer1),它开始很好地处理消息。
然后我用相同的消费者组ID启动了另一个消费者(consumer2)。

我希望两个消费者都应该分配负载。

你知道问题出在哪里吗?谢了。

共有1个答案

商业
2023-03-14

如果不对Zookeeper集群进行一些检查,我不确定消费者中会发生什么,但我可以怀疑一种可能的情况,即生产者可能不会均匀地将消息分发到分区。

分区由单个使用者组中的单个使用者拥有。所有者消费者称为分区所有者,进入分区的所有消息都由分区所有者独占使用。(有关更多信息,请参阅Kafka 0.8.1文档中的消费者。

假设有三个分区A、B、C和两个消费者1和2,生产者只向分区B发送消息。

 类似资料:
  • 我有一个微服务应用程序,它是使用camel kafka开发的,用于消费来自kafka的消息。我用4个并发实例运行这个服务,其中每个实例都有1个消费者,他们消费的主题有20个分区。 在维护期间(每天凌晨1-2点),应用程序将通过停止消费者来暂停消费。 当应用程序暂停消费时,kafka重新平衡发生,一些实例将在停止消费之前分配更多分区。 e、 由instanceA(partition1-5)使用的g分

  • 我用的是Kafka:2.11-1.0.1。应用程序包含主题“X”的并发性为5的使用者,分区为5。 重新启动应用程序并在分区分配之前在主题“X”上发布消息时,主题“X”的5个使用者会找到组协调器,并将加入组请求发送给组协调器。预计会收到小组协调员的回复,但未收到回复。 我检查了Kafka服务器日志,但在调试日志级别找不到相关日志。 当我运行描述消费者组的命令时,作出如下观察: 消费群体正在重新平衡

  • 我有一个带注释的kafka消费者方法@kafkalistener。我已经在容器上设置了重试模板,并且重试配置是这样的,如果在处理消息时发生了一些异常,它将始终重试。我已将最大轮询记录设置为1。如果这种情况实时发生,并且消费者一直在重试消息,经纪人会认为该消费者已经死亡并触发重新平衡吗?或者,在重试时,消费者是否会对未能处理的相同消息进行投票?如果这是真的,因为民意调查正在进行,我的假设是不会有任何

  • Kafka消费群体的滚动部署是否会导致该群体冻结? 让我们来考虑一下这个场景, 我们开始滚动部署 因此,如果您有一个足够大的集群,并且需要一些时间才能在一台机器上完成部署(通常情况下),这会导致消耗完全冻结吗? 如果是,在生产中进行消费者群体更新的策略是什么

  • 有人能告诉我Kafka消费者的再平衡算法是什么吗?我想了解分区计数和消费者线程是如何影响这一点的。 非常感谢。

  • 本文向大家介绍Kafka 消费者负载均衡策略相关面试题,主要包含被问及Kafka 消费者负载均衡策略时的应答技巧和注意事项,需要的朋友参考一下 一个消费者组中的一个分片对应一个消费者成员,他能保证每个消费者成员都能访问,如 果组中成员太多会有空闲的成员