我们正在使用 kafka-streams 2.3.1,我刚刚注意到,如果代理关闭,流应用程序似乎满足于尝试永远尝试连接。
new KafkaStreams(createTopology(), properties()).start()
o.apache.kafka.clients.NetworkClient - [AdminClient clientId=test] Connection to node -1 (broker/127.0.0.1:9092) could not be established. Broker may not be available.
在此过程中,流状态为 REBALANCING,因此没有好的方法来确定连接是否刚刚中断。
有没有办法为代理连接尝试设置超时或重试次数?
最佳答案
不幸的是,这个问题没有好的解决方法。这个问题实际上是一个消费者问题,因为消费者只是尝试重新连接,但没有向 Kafka Streams 显示它的内部状态。此外,不可能将消费者配置为在某些时候放弃。
有一个KIP给Kafka Streams添加一个“DISCONNECTED”状态,但是最近没有太大进展... 复杂... https://cwiki.apache.org/confluence/display/KAFKA/KIP-457%3A+Add+DISCONNECTED+status+to+Kafka+Streams
关于apache-kafka - Kafka Streams 代理连接超时设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59403196/