在kafka中创建主题时,可以设置复制因子但是我使用的是KafkaProducer(kafka api for python pip install kafka
)
我以为我可以做producer.send(...,replication-factor=3)
但是我没有选择这样做。
现在我只剩下一个选项就是直接创建一个shell脚本连接到kafka来创建一个主题但是如果python kafka的功能如此乏味,为什么我会继续使用它。因此,当我要生成一个kafka主题时,有没有办法设置复制因子。
答案 0 :(得分:1)
kafka-python
目前不支持Kafka Admin API。通过此客户端创建主题的唯一方法是依赖自动创建代理功能。
但是,正如您所注意到的,这不允许您提供任何主题配置。
你可以:
通过在代理的default.replication.factor=3
文件中设置server.properties
,在代理配置中设置复制因子(适用于所有主题)。
使用脚本(如kafka-topics.sh
工具)以自定义设置明确创建主题。
除了官方Java客户端支持之外,Kafka Admin API仍然相对较新且很少有客户端。