目录:
- Kafka CLI
- Kafka Java API
Kafka CLI
1、kafka-topic.sh:可创建、删除、修改、查看topic,并且还可以查看topic列表。
- 查看topic列表:./kafka-topics.sh --list --zookeeper 127.0.0.1:2181
- 查看topic详情:./kafka-topics.sh --describe --zookeeper 127.0.0.1:2181 --topic topicName
- 创建一个topic:./kafka-topics.sh --create --zookeeper 127.0.0.1:2181 --topic topicName --partitions 3 --replication-factor 3(1个主题,3个分区,3个副本;副本因子不能超过broker数量)
- 删除一个topic:./kafka-topics.sh --delete --zookeeper 127.0.0.1:2181 --topic topicName
- 修改一个topic:./kafka-topics.sh --alter --zookeeper zkHost:zkPort --topic topic-01 --partitions 3
2、kafka-console-producer.sh:生产者
- 生产一条消息:./kafka-console-producer.sh --broker-list 127.0.0.1:9092 --topic topicName
3、kafka-console-consumer.sh:消费者
- 消费一条消息:./kafka-console-consumer.sh --bootstrap-server 127.0.0.1:9092 --topic topicName
Kafka Java API
Java中通过org.apache.kafka.clients.admin.AdminClient操作topics
- 创建topic:public CreateTopicsResult createTopics(Collection<NewTopic> newTopics)
- 删除topic:public DeleteTopicsResult deleteTopics(Collection<String> topics)
- 列表topic:public ListTopicsResult listTopics()
- 查询topic:public DescribeTopicsResult describeTopics(Collection<String> topicNames)
- 等等
生产消息:org.apache.kafka.clients.producer.KafkaProducer、org.apache.kafka.clients.producer.ProducerRecord。
消费消息: