kafka话题创建参数备忘

kafka-topics.sh --create --zookeeper zk1:2181,zk2:2181,zk3:2181 --replication-factor 2 --partitions 2 --topic hi

--replication-factor

话题保存的副本数, 不能大于borker的数量.

--partitions

分区数量,  分区数最好是broker的整数倍, 这样才能分布均匀. 对于同一个topic, 同样的group中不能有多于partitions个数的consumer同时消费, 否则将意味着某些consumer将无法得到消息

Comsumer与Partition之间的关系:

    如果是1个comsumer 3个partition则1个comsumer能获取3个partition的所有消息

    如果是3个comsumer 3个partition则每个comsumer会消费对应1个partition的所有消息

    如果是3个comsumer 1个partition则其中1个comsumer会消费partition的消息,另外两个comsumer则闲置。

Consumer和consumer group关系:

    如果Consumers具有相同的groupId,则属于队列模式,1个消息只会被消费1次

    如果Consumers具有不同的groupId,则属于publish/subscribe模式,1个消息会被具有不同groupId的consumer各消费一次

image
请作者喝杯咖啡
user avatar
他们赞了这篇文章
user avataruser avataruser avataruser avatar