kafka话题创建参数备忘
kafka-topics.sh --create --zookeeper zk1:2181,zk2:2181,zk3:2181 --replication-factor 2 --partitions 2 --topic hi --replication-factor 话题保存的副本数, 不能大于borker的数量. --partitions 分区数量
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各消费一次