Kafka(v0.11) 知识点

1.消费者用--bootstrap-server方式启动,消费的偏移量offset保存在broker的一个主题_consumer_offsets里,此主题默认50个分区。

2.zk中的version-2文件夹存储了关于kafka的一些数据。

3.server.properties里的log.dir项配置的是主题里的数据,而不是日志。日志文件夹会自动生成,无需配置。

4.kafka是基于发布订阅模式的消息中间件,由消费者根据自身的消费能力,主动拉取数据,需要维护一个长轮询。

5.不同分区数据的便宜量都是从0开始,没有一个全局的统一偏移量。

6.生产者分区原则。我们需要将 producer 发送的数据封装成一个 ProducerRecord 对象。

  ①指明 partition 的情况下,直接将指明的值直接作为 partiton 值;
  ②没有指明 partition 值但有 key 的情况下,将 key 的 hash 值与 topic 的 partition数进行取余得到 partition 值;
  ③既没有 partition 值又没有 key 值的情况下,第一次调用时随机生成一个整数(后面每次调用在这个整数上自增),将这个值与 topic 可用的 partition 总数取余得到 partition值,也就是常说的 round-robin 算法。
 

猜你喜欢

转载自www.cnblogs.com/noyouth/p/12819810.html