spring kafka在运行时优雅地关闭了生产者

时间:2017-02-02 13:14:13

标签: spring-cloud spring-kafka

我们有一个使用spring-kafka的spring boot应用程序。我们想要更新配置属性时禁用kafka生成器(kafkatemplate)。我已尝试使用条件bean,并使用applicationcontext refresh。

有没有办法用spring-kafka优雅地关闭kafkaproducer?

1 个答案:

答案 0 :(得分:1)

您可以在destroy()上调用DefaultKafkaProducerFactory,它将关闭(单例)生成器,但下次有些代码调用createProducer()时,将创建另一个;目前还没有办法阻止这种情况发生。当您不想创建生产者时,您需要对工厂进行子类化并抛出异常。