Kafka 推送消息不指定分区:消息会发送到所有分区吗?
是的,如果在推送消息到 Kafka 时不指定 partition,Kafka 会使用默认的分区策略来确定消息发送到哪个 partition。默认的分区策略是轮询(Round-Robin)方式,即每次发送消息时,Kafka 会选择一个 partition,然后将消息发送到该 partition。
如果不指定 partition,而且使用了默认的分区策略,那么一条消息会被重复发送给所有的 partition。这样可能会导致消息重复消费的问题,因为消费者可能会从不同的 partition 读取到相同的消息。
为了避免消息重复发送的问题,可以在推送消息时指定具体的 partition,或者使用自定义的分区策略来保证消息只发送到特定的 partition。
原文地址: https://www.cveoy.top/t/topic/p29T 著作权归作者所有。请勿转载和采集!