Kafka的工作原理和过程

本文详细介绍了Kafka的生产消息过程,包括消息写入算法、路由策略、HW截断机制和可靠性机制。在消费消息部分,解析了消费者消费流程、Partition Leader选举以及重复消费的解决方案。
摘要由CSDN通过智能技术生成

目录

 

第1章 生产消息

1.1 消息写入算法

1.2 消息路由策略

1.3 HW截断机制

1.4 消息发送的可靠性机制

第2章 消费消息

2.1 消费者消费过程解析

2.2 Partition Leader选举范围

2.3 重复消费问题及解决方案


第1章 生产消息

1.1 消息写入算法

消息生产者将消息发送给broker,并形成最终可供消费者消费的log,是个比较复杂的过程。

  • producer向broker集群提交消息发送请求
  • broker controller接受该请求,并根据消息路由策略计算出该消息要写入的partition
  • broker controller根据 topic 和 partition 去 zookeeper 中找对应的znode状态中该partition的leader。
  • broker controller 向producer反馈消息要写入的partition leader。
  • producer发送消息给该leader。
  • leader接受消息并将该消息写入本地log,通知ISR中的followers进行消息同步。
  • ISR中的followers从leader同步消息完成后,向leader发送ACK
  • leader收到所有ISR中的follower的ACK后,增加HW表示消费者已经可以消费到该位置了。

1.2 消息路由策

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值