kafka拾遗

52 阅读1分钟

1.结构:
Broker一主多从 主题 -> 分区 -> 副本 -> 日志 -> 日志分段 -> 索引文件(偏移量索引,时间戳索引)

2.消费者Rebalance时机(会发生STW):

  • 组内成员数发生变化
  • 订阅主题数发生变化(订阅主题支持正则)
  • 主题分区数变更

3.心跳
独立线程来心跳

4.定时器 模拟时钟的设计,分层级的时间轮,高层级的时间临近到期时间时转移到低层级的轮中

5.ISR 一条消息只有被ISR集合的所有副本都运用到本地的日志文件,才会认为消息被成功提交了。任何时刻,只要ISR至少有一个副本是存活的,Kafka就可以保证“一条消息一旦被提交,就不会丢失“