消费者数量与分区数量相同

Having same number of consumers as the number of partitions

我有一个包含 4 个分区的 Kafka 主题,我正在创建一个使用 python 编写的应用程序,该应用程序使用主题中的数据。

我的最终目标是在应用程序中有 4 个 Kafka 消费者。所以,我使用 class KafkaClient 在应用程序启动后立即获取分区数,然后,我创建了 4 个线程,每个线程负责创建消费者和处理消息。

由于我是 Kafka 的新手(python 也是),我不知道我的方法是否正确,或者它需要改进(例如,如果消费者失败怎么办)。

如果消费者线程终止,那么您将需要逻辑来处理它。

线程可以工作(aiokafka 或 Faust 可能是更好的库),或者您可以使用主管或 Docker 编排 运行 多个消费者进程