Kafka不使用消息

时间:2019-06-23 15:11:38

标签: apache-kafka kafka-consumer-api spring-kafka

我已将我的kafka从0.10.2.0版本更新到versión2.1.0,现在kafka无法使用消息。我正在使用Spring Boot,这是我的配置:

configProperties.put(ConsumerConfig.BOOTSTRAP_SERVERS_CONFIG, kafkaServers);
configProperties.put(ConsumerConfig.KEY_DESERIALIZER_CLASS_CONFIG, "org.apache.kafka.common.serialization.StringDeserializer");
configProperties.put(ConsumerConfig.VALUE_DESERIALIZER_CLASS_CONFIG, "org.apache.kafka.common.serialization.StringDeserializer");
configProperties.put(ConsumerConfig.GROUP_ID_CONFIG, topic + "kafka2");
configProperties.put(ConsumerConfig.ENABLE_AUTO_COMMIT_CONFIG, false);
configProperties.put(ConsumerConfig.MAX_PARTITION_FETCH_BYTES_CONFIG, 3000000);
configProperties.put(ConsumerConfig.AUTO_OFFSET_RESET_CONFIG, "earliest");
configProperties.put(ConsumerConfig.FETCH_MAX_BYTES_CONFIG, 2000000000);
configProperties.put(ConsumerConfig.MAX_POLL_INTERVAL_MS_CONFIG, "900000");
configProperties.put(ConsumerConfig.REQUEST_TIMEOUT_MS_CONFIG, "905000");
configProperties.put(ConsumerConfig.SESSION_TIMEOUT_MS_CONFIG, "35000");

我已更改了组ID,以避免旧组ID出现问题。 我当前的弹簧版本是2.1.2.RELEASE。在我的应用程序中,我可以看到客户端如何不断重新连接

对这个问题有任何想法吗?

1 个答案:

答案 0 :(得分:0)

在谈论“春季版本”时,您应该更加具体。有许多不同版本的春季项目。

我假设您的意思是Spring Boot是2.1.2(顺便说一下,当前的2.1.x版本是2.1.6)。

Spring Boot 2.1.6将Spring用于Apache Kafka 2.2.7,而后者又使用kafka-clients 2.0.1。

我不希望将2.0.x kafka客户端与2.1.0代理一起使用会出现任何问题,但是您可以尝试将kafka客户端版本覆盖为described in the reference manual到2.1.0。

同样,我建议为apache.kafka启用DEBUG日志记录,以查看它是否为您提供更多信息。