kafka的分区副本规划
1. topic划分
每个日志对应一个topic。
topic 有自己的分区数量和副本数量。一般根据kafka指定的默认数量自动生成。
2. 分区数量
当生产者发给kafka一条消息时,根据规则分到 topic 的指定分区(partition),所以每个分区的数据是不一样的。
规划分区数量
消费者在消费数据的时候,也是从分区中消费的,同一个分区只能被消费组里的一个消费者去消费。
比如kafka有3个borker时,假如配置topic有5个分区,分配到3个borker就会出现 2 2 1 的情况。
所以在指定topic的分区数量时,最好指定数量为 borker的倍数,比如 3个或者6个。
3. 副本数量
topic 的每个分区可以指定副本数,副本分为主副本和从副本。
在 3个borker时,配置副本数为3个,包含1个主副本和2个从副本。实现3个borker的副本数是一致的。