如何使用kafkapython以编程方式创建主题?

sauutmhj  于 2021-06-06  发布在  Kafka
关注(0)|答案(1)|浏览(435)

我开始与Kafka和相当新的python。我正在使用这个名为 kafka-python 和我的Kafka经纪人交流。现在我需要从代码中动态创建一个主题,从文档中我看到的是我可以调用 create_topics() 方法这样做,但我不确定,我将如何获得这个类的示例。我无法从医生那里理解这一点。
有人能帮我吗?

ohfgkhjo

ohfgkhjo1#

首先需要创建 KafkaAdminClient . 以下内容可以帮您解决问题:

from kafka.admin import KafkaAdminClient, NewTopic

admin_client = KafkaAdminClient(
    bootstrap_servers="localhost:9092", 
    client_id='test'
)

topic_list = [NewTopic(name="example_topic", num_partitions=1, replication_factor=1)]
admin_client.create_topics(new_topics=topic_list, validate_only=False)

或者,您可以使用 confluent_kafka 客户端是librdkafka的轻量级 Package 器:

from confluent_kafka.admin import AdminClient, NewTopic

admin_client = AdminClient({"bootstrap_servers": "localhost:9092"})
topic_list = [NewTopic("example_topic", 1, 1)]
admin_client.create_topics(topic_list)

相关问题