当多个Producers向Broker写同一条消息时,Broker怎么办?还有一个相关问题(由于 150 个字符的限制)

What does Broker do when multiple Producers write the same message to Broker? And one more related question (due to 150 character limit)

Producer A 向 Broker A(分区 1)写入一条消息,Producer B 向 Broker A(分区 1)写入相同的消息。 消息或 Broker 会怎样?

我猜是因为有相同的消息,Producer B 停止了相同的消息,并继续消息的下一部分?

我还有一个问题 如果你想发送一个电影文件,例如,到 Kafka 集群,我可以做 4 个制作人,让他们把电影的不同部分发送到集群吗? 例如,制片人A发送电影的第一部分,制片人B发送电影的第二部分,依此类推。 (因为这似乎比一个制作人更有效。)

  1. 如果2个生产者向Kafka发送同一条消息,则消息被写入两次。 Kafka 不检查消息的内容。如果你在生产者中两次调用 send() 是一样的,你会在 Kafka 中收到 2 条消息。

  2. 如果要发送大量数据,建议使用多个生产者来分工。此外,Kafka 并非真正设计用于处理 >1GB 的消息,因此将大文件拆分为较小的块是一个好主意。请注意如何拆分数据,因为您可能必须在消费者端重新组合数据!