Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
卡夫卡:禁用从Java创建主题_Java_Apache Kafka_Kafka Topic - Fatal编程技术网

卡夫卡:禁用从Java创建主题

卡夫卡:禁用从Java创建主题,java,apache-kafka,kafka-topic,Java,Apache Kafka,Kafka Topic,将Kafka与Java库一起使用,我想禁用自动创建主题(如果它还不存在的话) 一些网站说我应该将auto.create.topics.enable设置为false,但这在Java中是无法识别的 15:11:56.962 [main] WARN o.a.k.c.consumer.ConsumerConfig - The configuration 'auto.create.topics.enable' was supplied but isn't a known config. 目前,我将其

将Kafka与Java库一起使用,我想禁用自动创建主题(如果它还不存在的话)

一些网站说我应该将auto.create.topics.enable设置为false,但这在Java中是无法识别的

15:11:56.962 [main] WARN  o.a.k.c.consumer.ConsumerConfig -  The configuration 'auto.create.topics.enable' was supplied but isn't a known config.
目前,我将其作为环境变量放入docker compose中:

KAFKA_AUTO_CREATE_TOPICS_ENABLE: 'false'
这是可行的,但我想通过用户从Java管理它


这可能吗?

这是代理级别的配置。您不能让用户通过java客户端程序来管理它

As
auto.create.topics.enable
属性是只读代理配置,需要重新启动kafka服务。因此,不可能从客户端处理它


您可以使用动态更新模式阅读此处的配置:

Spring具有
Spring.cloud.stream.kafka.binder.autoCreateTopics
属性,该属性默认为
true
,独立于代理属性
auto.create.topics.enable
。我猜只有当您的代理配置允许客户端创建主题时,它才有效。阻止该权限可能比依靠客户端的行为更安全


由于它是一个代理级别的配置,您需要将其放入server.properties中才能正常工作