我正在使用Reactor Kafka,但无法解决以下问题。是否可以将Receiver配置为在应用程序完全启动后启动,而不是在应用程序启动时启动?或者,例如,接收器是在某个事件之后启动的?我在文档中找不到关于它的信息:-(
xwbd5t1u1#
我想知道你现在怎么发射接收器。准确地说,Sping Boot 中没有任何东西会自动从那个Kafka接收器开始消费。你必须在代码中以某种方式将subscribe()转换为结果Flux。而这正是你可以在代码中控制的。例如,您可以捕获ApplicationReadyEvent或拥有ApplicationRunner bean。并调用一些你的服务,这是要subscribe()到Flux从接收器。即使是Spring for Apache Kafka及其@KafkaListener也只有在应用程序完全就绪时才开始使用。但Reactor Kafka与Spring无关。你可能只是在某个错误的地方subscribe()。
subscribe()
Flux
ApplicationReadyEvent
ApplicationRunner
@KafkaListener
1条答案
按热度按时间xwbd5t1u1#
我想知道你现在怎么发射接收器。准确地说,Sping Boot 中没有任何东西会自动从那个Kafka接收器开始消费。你必须在代码中以某种方式将
subscribe()
转换为结果Flux
。而这正是你可以在代码中控制的。例如,您可以捕获ApplicationReadyEvent
或拥有ApplicationRunner
bean。并调用一些你的服务,这是要subscribe()
到Flux
从接收器。即使是Spring for Apache Kafka及其
@KafkaListener
也只有在应用程序完全就绪时才开始使用。但Reactor Kafka与Spring无关。你可能只是在某个错误的地方subscribe()
。