python kafka 多个topic
时间: 2023-06-30 11:20:51 浏览: 223
如果你想在 Python 中使用 Kafka 消费者消费多个 topic,可以按照以下步骤进行操作:
1. 使用 `kafka-python` 库创建 Kafka 消费者对象:
```python
from kafka import KafkaConsumer
consumer = KafkaConsumer(bootstrap_servers=['localhost:9092'],
auto_offset_reset='earliest',
enable_auto_commit=True,
group_id='my-group')
```
其中,`bootstrap_servers` 参数指定 Kafka 集群的地址,`auto_offset_reset` 参数指定消费者在启动时从哪里开始消费消息,`enable_auto_commit` 参数指定消费者是否自动提交消费位移,`group_id` 参数指定消费者所属的消费组。
2. 订阅多个 topic:
```python
consumer.subscribe(['topic1', 'topic2', 'topic3'])
```
3. 循环消费消息:
```python
for message in consumer:
print(message)
```
在上述代码中,`consumer` 对象会循环消费多个 topic 中的消息,并将消息打印出来。
注意:如果不想订阅所有的 topic,也可以使用正则表达式来匹配需要订阅的 topic。例如,`consumer.subscribe(['topic.*'])` 将订阅所有以 "topic" 开头的 topic。
阅读全文