我对卡夫卡世界比较陌生。我可以使用Java设置kafka使用者,并且可以看到使用者API允许我设置使用者属性。
properties.put(ConsumerConfig.MAX_POLL_INTERVAL_MS_CONFIG,2000);
new KafkaConsumer<>(properties)
这对我来说很好。我还在kafka服务器上看到一个名为Consumer.properties的文件。我以为如果在此文件中将max.poll.interval.ms配置为某个值,则无需在使用者代码中对其进行配置。但这是行不通的。是否无法从服务器端确定使用者属性?我认为,如果Kafka服务器决定心跳时间或超时时间而不是由消费者决定,那会更好。我必须在kafka服务器上执行其他任何设置以强制使用方属性吗?我浏览了Kafka文档,但找不到与此相关的任何内容。看来必须先编写consumer.properties文件,然后再将其传递给使用者API。请说清楚。谢谢。
答案 0 :(得分:3)
Kafka使用者没有全局配置。 sys.all_columns
文件通常用于Kafka控制台使用者。例如,
consumer.properties
或者,如果要在Java Consumer的上下文中使用该文件,则可以照常读取kafka-console-consumer --bootstrap-server localhost:9092 --topic myTopic --from-beginning --consumer.config consumer.properties
并设置相应的属性。例如,
consumer.properties