在关于下面第一张图片的Apache Kafka中,如果每个分区包含 the same message with different key ,即每个分区中的单个相同消息,那么第一个图像是否比第二个图像更有效 broadcast ?
有效的广播,我的意思是当我们有更多的消费者时,哪一个有新的延迟 sublinear to the new number of consumers . 或者它们都具有线性或上线性延迟?
我还想询问是否有可能有几个分区具有相同的单个消息 with different key ,因为我们从Kafka的文档中知道每个分区都包含不同的数据 .
是否有任何其他更有效的广播方案使用Apache Kafka,或任何实现次线性延迟广播机制的Apache Kafka API?
1 回答
问: I would like also to ask if it is possible to have several partitions with the same single message with different key
答: yes it is possible kafka can have several partitions with the same single message with different key
两种方法完全不同
First approach
1)您有一个主题名称
topic0
,有三个分区,每个分区都有单个消息2)您有一个消费者组
CONSUMER GROUP0
附加到主题topic0
,其中三个主题消耗主题, here is thumb rule each partition can have at most one consumer thread of same group这是一对一的映射,你不会得到重复的消息,每个消息将由同一组的不同线程的消费者
Second approach
但是在这里,您使用三个不同组的三个不同线程消耗相同的消息