Kafka3.0.0版本——消费者(消费者组初始化流程图解)

一、消费者组初始化流程图解

  1. 每个consumer都发送JoinGroup请求,如下图所示:

    Kafka3.0.0版本——消费者(消费者组初始化流程图解)_第1张图片

  2. 选出一个consumer作为leader,如下图所示:
    Kafka3.0.0版本——消费者(消费者组初始化流程图解)_第2张图片

  3. 把要消费的topic情况发送给leader 消费者,如下图所示:
    Kafka3.0.0版本——消费者(消费者组初始化流程图解)_第3张图片

  4. leader会负责制定消费方案,并把消费方案发给coordinator,如下图所示:
    Kafka3.0.0版本——消费者(消费者组初始化流程图解)_第4张图片

  5. Coordinator就把消费方案下发给各个consumer,如下图所示:
    Kafka3.0.0版本——消费者(消费者组初始化流程图解)_第5张图片

  6. 每个消费者都会和coordinator保持心跳(默认3s),一旦超时(session.timeout.ms=45s),该消费者会被移除,并触发再平衡;或者消费者处理消息的时间过长(max.poll.interval.ms5分钟),也会触发再平衡,如下图所示:
    Kafka3.0.0版本——消费者(消费者组初始化流程图解)_第6张图片

你可能感兴趣的:(kafka,kafka)