消费者的组件

  • KakfaConsumer:消费端,用于启动消费者进程来消费消息。

  • ConsumerConfig:消费端配置管理,用于给消费端配置相关参数,比如指定 Kafka 集群,设置自动提交和自动提交时间间隔等等参数,都由其来管理。

  • ConsumerConnector:消费者连接器,通过消费者连接器可以获得 Kafka 消息流,然后通过消息流就能获得消息从而使得客户端开始消费消息。

消费者消费消息流程kafaka消费端工作流程

 

 从消费者与 ZK 的角度的消费流程

kafaka消费端工作流程

 首先拉取线程每拉取一次消息,同步更新一次拉取状态,其作用是为了下一次拉取消息时能够拉取到最新产生的消息;拉取线程将拉取到的消息写入到队列中等待消费消费线程去真正读取处理。消费线程以轮询的方式持续读取队列中的消息,只要发现队列中有消息就开始消费,消费完消息后更新消费进度,此处需要注意的是,消费线程不是每次都和 ZK 同步消费进度,而是将消费进度暂时写入本地。这样做的目的是为了减少消费者与 ZK 的频繁同步消息,从而降低 ZK 的压力

 

相关文章:

  • 2022-01-18
  • 2021-08-19
  • 2021-04-27
  • 2022-12-23
  • 2022-12-23
  • 2021-10-24
  • 2022-12-23
  • 2021-06-12
猜你喜欢
  • 2021-11-01
  • 2021-07-06
  • 2021-10-05
  • 2021-08-28
  • 2022-03-04
  • 2021-07-08
  • 2022-12-23
相关资源
相似解决方案