Skip to content

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的副本数是一致的。