我有一个应用程序,消费一个卡夫卡主题,做事情,并产生两个不同的主题的结果。
棘手的是,传出的主题可能还不存在,我需要有机会根据环境变量的要求关闭生产者。
我可以通过这种方式禁用send()方法,但在应用程序启动时,它会尝试连接到主题以获取元数据和垃圾邮件:
Error while fetching metadata ... UNKNOWN_TOPIC_OR_PARTITION
尝试了不同的生产者属性,但没有成功。我还尝试使用ConditionalOnProperty注释生产者类,但服务类需要该bean。
发布于 2021-11-15 12:14:46
默认情况下,生产者和消费者是自动启动的。您可以使用auto-startup消费者/生产者属性- https://docs.spring.io/spring-cloud-stream/docs/3.1.5/reference/html/spring-cloud-stream.html#_producer_properties禁用它。
您还可以通过执行器REST端点启动/停止绑定- https://docs.spring.io/spring-cloud-stream/docs/3.1.5/reference/html/spring-cloud-stream.html#binding_visualization_control
https://stackoverflow.com/questions/69973632
复制相似问题