在创建期间配置所有主题的保留策略
正在尝试使用spring配置rentension.ms,因为出现以下错误:
原因:java.util.concurrent.executionexception:org.apache.kafka.common.errors.policyviolationexception:指定的retention.ms无效。允许的范围是[3600000..2592000000],从我读到的新值是-1(无穷大),因此超出了该范围
在SpringMVC中创建时,如何配置kafka主题保留策略,我添加了下面的代码,但似乎没有效果。关于如何解决这个问题有什么想法/提示吗?
ApplicationConfigurationTest.java
@test
public void kafkaAdmin () {
KafkaAdmin admin = configuration.admin();
assertThat(admin, instanceOf(KafkaAdmin.class));
}
ApplicationConfiguration.java
@Bean
public KafkaAdmin admin() {
Map<String, Object> configs = new HashMap<>();
configs.put(TopicConfig.RETENTION_MS_CONFIG, "1680000");
return new KafkaAdmin(configs);
}
1条答案
按热度按时间bz4sfanl1#
通过设置值找到解决方案
spring.kafka.streams.topic.retention.ms: 86400000
在application.yml中。我们的应用程序使用springmvc,因此使用spring符号。
topic.retention.ms是需要在streams配置中设置的值
86400000是一个随机值,只是在
[3600000..2592000000]