Apache kafka Kafka Streams broker连接超时设置

Apache kafka Kafka Streams broker连接超时设置,apache-kafka,apache-kafka-streams,Apache Kafka,Apache Kafka Streams,我们正在使用kafka streams 2.3.1,我刚刚注意到,如果代理关闭,streams应用程序似乎满足于尝试永远保持连接 new KafkaStreams(createTopology(), properties()).start() 在这种情况下,streams状态正在重新平衡,因此无法确定连接是否中断 有没有办法为代理连接尝试设置超时或重试次数?不幸的是,没有解决此问题的好办法。这个问题实际上是一个消费者问题,因为消费者只是尝试重新连接,但没有将其内部状态显示给卡夫卡流。此外,不可

我们正在使用kafka streams 2.3.1,我刚刚注意到,如果代理关闭,streams应用程序似乎满足于尝试永远保持连接

new KafkaStreams(createTopology(), properties()).start()
在这种情况下,streams状态正在重新平衡,因此无法确定连接是否中断


有没有办法为代理连接尝试设置超时或重试次数?

不幸的是,没有解决此问题的好办法。这个问题实际上是一个消费者问题,因为消费者只是尝试重新连接,但没有将其内部状态显示给卡夫卡流。此外,不可能将消费者配置为在某个时候放弃


有一个KIP向卡夫卡流添加一个“断开连接”的状态,但最近没有太多进展。。。这很复杂

你有不止一个经纪人吗?您是否将它们都作为引导服务器提供?我正在使用一个代理进行本地测试,但我假设行为不会改变(即,它一直尝试连接)。我使用
config.put(StreamsConfig.BOOTSTRAP\u SERVERS\u config,“broker:9092”)进行配置
broker
指向localhost,我启动它(这就是为什么它无法连接)没有意义,所以您是否只尝试运行一个单元测试?或者,如果代理没有启动,你为什么要尝试运行应用程序?尝试在不运行Kafka的情况下运行应用程序我也刚刚意识到,如果所有代理在初始连接建立后都停止运行,那么streams状态甚至不会重新平衡。它会跑的。基本上,在streams应用程序上进行健康检查没有什么好方法(定期与AdminClient ping?)。它总是在跑
 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.