无法暂停 Spring Kafka 容器
Not able to Pause Spring Kafka Container
我想暂停 Kafka 监听器。
- 我调用 http://localhost:8080/pause 来暂停容器
- 我发送有关该主题的数据。
- 消费者开始消费消息
我预计消费者会暂停,但消息仍在从 Kafka 主题中读取。
我怎样才能暂停消费者?
我正在使用 2.5.0(Spring 引导父级)
@KafkaListener(id="foo" ,topics = "mytopic-3", concurrency = "3", groupId = "mytopic-1-groupid")
@Autowired
private KafkaListenerEndpointRegistry kafkaListenerEndpointRegistry;
@GetMapping("/pause")
public void pause( )
{
System.out.println(" Pausing Kafka Listener");
kafkaListenerEndpointRegistry.getListenerContainer("foo").pause();
}
@Configuration
@EnableKafka
public class KafkaConsumerConfig implements KafkaListenerConfigurer {
@Autowired
private LocalValidatorFactoryBean validator;
@Override
public void configureKafkaListeners(KafkaListenerEndpointRegistrar registrar) {
registrar.setValidator(this.validator);
}
所有 2.7.x 版本都有一个错误。修复了 today 容器在暂停后立即恢复的问题。
引导 2.5(当前为 2.5.2)引入 2.7.x;下周的 2.5.3 版本应该有修复 (spring-kafka 2.7.4).
修复在快照 2.7.4-SNAPSHOT 中,您可以通过将 https://repo.spring.io/snapshot 添加到您的构建配置来获得它。
2.7.4
应该在星期一可用(并在本周晚些时候启动 2.5.3)。
您也可以临时降级到 2.6.9 (spring-kafka)。
我想暂停 Kafka 监听器。
- 我调用 http://localhost:8080/pause 来暂停容器
- 我发送有关该主题的数据。
- 消费者开始消费消息
我预计消费者会暂停,但消息仍在从 Kafka 主题中读取。 我怎样才能暂停消费者? 我正在使用 2.5.0(Spring 引导父级)
@KafkaListener(id="foo" ,topics = "mytopic-3", concurrency = "3", groupId = "mytopic-1-groupid")
@Autowired
private KafkaListenerEndpointRegistry kafkaListenerEndpointRegistry;
@GetMapping("/pause")
public void pause( )
{
System.out.println(" Pausing Kafka Listener");
kafkaListenerEndpointRegistry.getListenerContainer("foo").pause();
}
@Configuration
@EnableKafka
public class KafkaConsumerConfig implements KafkaListenerConfigurer {
@Autowired
private LocalValidatorFactoryBean validator;
@Override
public void configureKafkaListeners(KafkaListenerEndpointRegistrar registrar) {
registrar.setValidator(this.validator);
}
所有 2.7.x 版本都有一个错误。修复了 today 容器在暂停后立即恢复的问题。
引导 2.5(当前为 2.5.2)引入 2.7.x;下周的 2.5.3 版本应该有修复 (spring-kafka 2.7.4).
修复在快照 2.7.4-SNAPSHOT 中,您可以通过将 https://repo.spring.io/snapshot 添加到您的构建配置来获得它。
2.7.4
应该在星期一可用(并在本周晚些时候启动 2.5.3)。
您也可以临时降级到 2.6.9 (spring-kafka)。