如何关闭现有的kafka生产者

how to close existing kafka producer

我正在使用 spring-kafka 2.2.7-RELEASE 并编写制作人。我正在阅读此处的文档,如下所示。

“从 2.5 版开始,每一个都扩展了 KafkaResourceFactory。这允许通过在其配置中添加供应商来在运行时更改 bootstrap 服务器:setBootstrapServersSupplier(() → … )。这将被称为对于所有新连接以获取服务器列表。消费者和生产者通常是长期存在的。要关闭现有的生产者,请在 DefaultKafkaProducerFactory 上调用 reset()。要关闭现有的消费者,请在KafkaListenerEndpointRegistry and/or 任何其他侦听器容器 bean 上的 stop() 和 start()

https://docs.spring.io/spring-kafka/reference/html/#connecting

现在,我的问题是

  1. 我们应该何时以及如何调用此重置方法?
  2. 如果我们使用旧版本的 spring-kafka,如 2.2.7,我们该如何处理?
  1. 每当你想连接到不同的经纪商;只需在工厂上调用 reset()

  2. 旧版本不可以,你必须创建一个新的工厂和模板。