我使用Ubuntu服务器16.04尝试使用Kafka.对于启动生产者和消费者控制台的命令,我使用以下命令.
制片人控制台
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic hello-topic
消费控制台:
bin/kafka-console-consumer.sh --zookeeper localhost:2181 --from-beginning --topic hello-topic
但上面的命令只订阅了一个主题.我如何订阅多个主题?
最佳答案 首先,您应该将选项bootstrap-server连接到Kafka服务器本身而不是zookeeper服务器.
对于多个主题,您可以使用白名单选项.这将被解释为正则表达式并且必须引用,请参阅Kafka documentation.
所以正确的命令是:
kafka-console-consumer.sh –bootstrap-server localhost:9092 –whitelist’hello-topic | world-topic | another-topic’
其他表达也是可能的,比如
kafka-console-consumer.sh –bootstrap-server localhost:9092 –whitelist’.*’
意识到
For convenience we allow the use of ‘,’ instead of ‘|’ to specify a list of topics.
不适用于Kafka 2.0,也许只有在镜像时,我还没有尝试过.