【发布时间】:2019-11-18 13:38:14
【问题描述】:
我对 Kafka 世界还比较陌生。我可以在 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。请说清楚。谢谢。
【问题讨论】:
-
一种替代方法是将 kafka 消费者包装到具有消费者属性的 java 库中,并且您的所有应用程序都可以导入和使用此库
标签: apache-kafka kafka-consumer-api