Apache kafka 代理不可用后自动重新启动Quarkus微服务
我有一个非常简单的Quarkus微服务,它使用smallrye反应式消息传递(kafka)。有时我的卡夫卡经纪人破产,我得到以下日志:Apache kafka 代理不可用后自动重新启动Quarkus微服务,apache-kafka,quarkus,smallrye-reactive-messaging,smallrye,Apache Kafka,Quarkus,Smallrye Reactive Messaging,Smallrye,我有一个非常简单的Quarkus微服务,它使用smallrye反应式消息传递(kafka)。有时我的卡夫卡经纪人破产,我得到以下日志: 2020-09-24 04:04:27,067 WARN [org.apa.kaf.cli.NetworkClient] (kafka-producer-network-thread | producer-1) [Producer clientId=producer-1] Bootstrap broker xxxxxxx.xxxx.xxx:2202 (id: -
2020-09-24 04:04:27,067 WARN [org.apa.kaf.cli.NetworkClient] (kafka-producer-network-thread | producer-1) [Producer clientId=producer-1] Bootstrap broker xxxxxxx.xxxx.xxx:2202 (id: -1 rack: null) disconnected 2020-09-24 04:04:27,083 WARN [org.apa.kaf.cli.NetworkClient] (kafka-producer-network-thread | producer-3) [Producer clientId=producer-3] Connection to node -1 (xxxxx.xxxx.xxxx.fr/XX.XX.XX.XXX:2202) could not be established. Broker may not be available.
重新启动代理后,我必须手动重新启动我的微服务。是否有可能增加微服务的功能,以便在不进行任何手动操作的情况下重新汇总新传入的消息
谢谢大家! 如果您使用的是KafkaProducer和Consumer API,那么一旦代理再次启动,它们就会自动重新连接。
请确保在应用程序中不会抛出异常并终止线程。如果让线程保持活动状态,那么它将重新连接。捕获使用者线程的所有异常,以确保它不会由于运行时异常而退出。只需添加方法签名@OnOverflow(value=OnOverflow.Strategy.DROP)