gpt4 book ai didi

apache-kafka - Kafka 消费者(组)触发再平衡的条件

转载 作者:行者123 更新时间:2023-12-04 14:55:05 27 4
gpt4 key购买 nike

我正在浏览 Kafka 的消费者配置。

  • https://kafka.apache.org/documentation/#newconsumerconfigs

  • 哪些参数会触发重新平衡?例如,以下参数将 ?。我们需要更改或将默认设置的任何其他参数就足够了

    connection.max.idle.ms 在此配置指定的毫秒数后关闭空闲连接。长 540000 中

    我们还有三个不同的主题
  • 让相同的消费者组(相同 ID)从多个主题中消费是不是一个坏主意。
  • 假设上述场景是否有效(不一定是最佳实践)——如果主题之一的流量非常小,是否会导致消费者组重新平衡。

    一个后续问题 - 哪些因素会影响重新平衡及其性能。
  • 最佳答案

    这些条件将触发组重新平衡:

    Number of partitions change for any of the subscribed list of topics

    Topic is created or deleted

    An existing member of the consumer group dies

    A new member is added to an existing consumer group via the join API


    让相同的消费者组(相同 ID)从多个主题中消费是不是一个坏主意。
    至少它是有效的,至于好坏,这取决于您的具体情况。
    这是官方java客户端api支持的,看这个方法定义:
    public void subscribe(Collection<String> topics,
    ConsumerRebalanceListener listener)
    它接受一组主题。
    如果其中一个主题的流量非常小,是否会导致消费者组重新平衡。
    不,因为这未在条件中列出。如果只从话题方面考虑的话。只有当主题被删除或分区计数改变时,才会发生重新平衡。
    更新。
    感谢@Hans Jespersen 对 session 和心跳的评论。
    这是由 kafka Consumer javadoc 引用的:

    After subscribing to a set of topics, the consumer will automatically join the group when poll(long) is invoked. The poll API is designed to ensure consumer liveness. As long as you continue to call poll, the consumer will stay in the group and continue to receive messages from the partitions it was assigned. Underneath the covers, the poll API sends periodic heartbeats to the server; when you stop calling poll (perhaps because an exception was thrown), then no heartbeats will be sent. If a period of the configured session timeout elapses before the server has received a heartbeat, then the consumer will be kicked out of the group and its partitions will be reassigned.


    在你的问题中,你问 哪些参数会触发重新平衡
    在这种情况下,有两个配置与重新平衡有关。是 session.timeout.ms max.poll.records .其手段显而易见。
    从中,我们还可以了解到在轮询之间做大量工作是一种不好的做法,开销工作可能会阻止心跳并导致 session 超时。

    关于apache-kafka - Kafka 消费者(组)触发再平衡的条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45888291/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com