python - 如何使用 kafka-python 以编程方式创建主题?

标签 python apache-kafka kafka-python kafka-topic

我正在开始使用 Kafka,对 Python 还很陌生。我正在使用这个名为 kafka-python 的库与我的 Kafka 经纪人沟通。现在我需要从我的代码动态创建一个主题,从文档中我看到的是我可以调用 create_topics() 方法来执行此操作,但是我不确定,我将如何获得一个实例这个类。我无法从文档中理解这一点。

有人可以帮我解决这个问题吗?

最佳答案

您首先需要创建 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 的轻量级包装器:

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)

关于python - 如何使用 kafka-python 以编程方式创建主题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55512586/

相关文章:

python - 从类中的静态方法 Python 填充一次静态变量

java - 卡夫卡 : How to give consumer poll time out value?

使用 appication.yml/properties 具有不同属性配置的 Spring Boot Kafka 多个消费者

apache-kafka - Kafka Streams Listing 和 Trying 描述了不属于拓扑的主题

python - 如果Kafka中不存在主题,如何使用kafka-python动态创建主题

python - 在大字符串中搜索文件路径。返回文件路径+文件名

python - Django 按组保留一个元素,然后在此查询集上使用属性

python - 每个单词之间的空格数

python - 如何在 Python 中使用 kafka 客户端描述主题

python - 如何使用 Python 以编程方式在 Kafka Schema Registry 中注册 Avro Schema