Python KafkaProducer无法设置复制因子

时间:2018-01-15 13:24:27

标签: python apache-kafka kafka-producer-api

在kafka中创建主题时,可以设置复制因子但是我使用的是KafkaProducer(kafka api for python pip install kafka

我以为我可以做producer.send(...,replication-factor=3)但是我没有选择这样做。

现在我只剩下一个选项就是直接创建一个shell脚本连接到kafka来创建一个主题但是如果python kafka的功能如此乏味,为什么我会继续使用它。因此,当我要生成一个kafka主题时,有没有办法设置复制因子。

1 个答案:

答案 0 :(得分:1)

kafka-python目前不支持Kafka Admin API。通过此客户端创建主题的唯一方法是依赖自动创建代理功能。

但是,正如您所注意到的,这不允许您提供任何主题配置。

你可以:

  • 通过在代理的default.replication.factor=3文件中设置server.properties,在代理配置中设置复制因子(适用于所有主题)。

  • 使用脚本(如kafka-topics.sh工具)以自定义设置明确创建主题。

除了官方Java客户端支持之外,Kafka Admin API仍然相对较新且很少有客户端。