kafka--topic创建的两种方式

创建topic的两种方式:

方法一:

bin/kafka-topics.sh --create --topic topicname --replication-factor 1 --partitions 1 --zookeeper localhost:2181


-topic 指定topic
-partitions指定分区数

kafka通过分区策略,将不同的分区分配在一个集群中的broker上,一般会分散在不同的broker上,当只有一个broker时,所有的分区就只能分配到该broker上。
消息会通过浮在均衡发布到不同的分区上,消费者会监测偏移量来获取哪个分区有新数据,从而从该分区上拉取消息数据。
分区数越多,在一定程度上会提高消息处理的吞吐量,因为kafka是基于文件进行读写,因此也需要打开更多的文件句柄,也会增加一定的性能开销。
如果分区过多,那么日志分段也会很多,写的时候由于是批量写,其实就会变成随机写,随机I/O对性能影响很大,所以一般来说,kafka不能有太多的Partition

--replication-factor
用来设置主题的副本数。每个主题可以有多个副本,副本位于集群中不同的broker上,也可以说副本的数量不能超过broker的数量,否则创建主题时会失败

 

方法二:
conf/server.properties开启自动创建配置:auto.create.topics.enable=true 
 

你可能感兴趣的:(kafka)