查询:使路由器的接口成为kafka集群的生产者。
问题:我的路由器的界面正在尝试将数据推送到运行kafka的端口。 (默认为9092)。
Q值。 1但是kafka经纪人是否可以在没有创建主题的情况下接受这些数据?
Q值。 2 kafka消费者可以在不指定主题的情况下提取数据吗?
If yes, How ?
If not, What is work around this and how can i achieve this ?
第1次编辑:
我刚检查过Kafka经纪人配置有“auto.create.topics.enable”字段。 如果我将此设置为true并在kafka的端口上发送一些随机数据而不使用“kafka-console-producer”命令,那么kafka经纪人会接受它吗?
谢谢。
答案 0 :(得分:1)
kafka代理可以在没有创建主题的情况下接受此数据
默认情况下,Kafka代理以一种创建主题的方式设置,如果您尝试将数据推送到该主题但它尚不存在。此行为由auto.create.topics.enable
参数(true
/ false
值)控制。
但经纪人无法接受没有创建主题的数据。是的,必须在生产者方面指定主题名称。
kafka消费者是否可以在不指定主题的情况下提取数据
不,它不能。
如果没有,解决这个问题的方法是什么,我该如何实现?
你必须以某种方式检索主题名称,例如,通过api列出所有主题并选择正确的主题,或者你可以直接挖掘到zookeeper内部,但我不建议你这样做。
我刚检查过Kafka经纪人配置了" auto.create.topics.enable"领域。如果我将其设置为true并在kafka的端口上发送一些随机数据而不使用" kafka-console-producer"命令,卡夫卡经纪人会接受吗?
当然不是。 Kafka使用it's own protocol在生产者和代理,经纪人和消费者之间建立连接,而且,这些消息是专门编码的。