如果我拥有比消费者更多的分区,我可以丢失信息吗?

问题描述:

我正在通过使用storm-kafka api从3个副本和70个分区读取来自kafka主题的邮件,我正在使用的kafka spout有15个执行程序,可能会因为没有70个执行程序而丢失邮件?如果我拥有比消费者更多的分区,我可以丢失信息吗?

如何确保卡夫卡中的所有消息都是由消费者接收的?

谢谢

卡夫卡具有默认情况下,你已经知道使它卡夫卡数据至少一次交货的保证。如果消费者组的分区消费者实例少于消费者组,则根据分区分配策略为消费者分配多个分区。默认情况下它使用RangeAssignor。您可以阅读关于Kafka here的交付语义的更多信息。