目前我有一个Kafka主题。
现在我需要运行多个consumer,以便可以并行地读取和处理消息。
这可能吗。
我正在使用python和pykafka库。
consumer = topic.get_simple_consumer(consumer_group=b"charlie",
auto_commit_enable=True)
在两个消费者身上都传达了同样的信息。我只需要处理一次消息。
目前我有一个Kafka主题。
现在我需要运行多个consumer,以便可以并行地读取和处理消息。
这可能吗。
我正在使用python和pykafka库。
consumer = topic.get_simple_consumer(consumer_group=b"charlie",
auto_commit_enable=True)
在两个消费者身上都传达了同样的信息。我只需要处理一次消息。
2条答案
按热度按时间qyyhg6bp1#
你需要使用
BalancedConsumer
而不是SimpleConsumer
:您还应该确保您正在使用的主题的分区数至少与您正在示例化的使用者数相同。
rkttyhzu2#
是的,您可以让多个使用者并行读取同一主题,前提是您使用相同的使用者组id,并且主题的分区数应大于使用者,否则某些使用者将不会被分配任何分区,并且这些使用者将不会获取任何数据