[英]Kafka multiple producers to specific same partition
使用spring kafka模板,我有2个不同的生产者,它们总是以相同的形式向主题发送具有相同密钥的不同消息:
生产者1:发送密钥:1消息:abc分区0
生产者2:发送密钥:2消息:def
我有3个分区,并且根据消息密钥将所有消息发送到同一分区。
现在,我需要确保根据某些属性,特定的消息将进入特定的分区,以便能够管理系统中的某些优先级。
生产者2不能知道生产者1选择了哪个分区。
Kafka确保使用相同的密钥从不同的生产者发送的消息将到达相同的分区。 但是,当从生产者1分配分区时,生产者2将具有相同密钥的消息发送到另一个分区。
我已经看到了有关此的信息,但是没有看到生产者选择将要使用的分区的信息。
即使生产者选择了它将使用的分区,kafka也不应该继续为消息分配相同的分区吗?
这篇文章的答案可能有助于您了解所面临的问题。 分区0的偏移量非常接近其余分区的偏移量之和
/ ** *默认分区策略:* *
如果记录中指定了分区,请使用它* 如果未指定分区但存在键,则根据键的哈希值选择一个分区* 如果不存在分区或密钥,则以循环方式选择一个分区* /
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.