kafka能否实现点对点(一对一)消费?

在kafka中,多个消费者监听同个topic,此时一个消息过来,那么应该有以下两种情况可选:

1、多对一消费:所有消费者都能消费这个消息

2、一对一消费:只有一个消费者可以能消费到这条消息

请问kafka可以实现一对一消费吗?

如果可以,请提供实现的代码或链接给我,谢谢。

可以,用户编号设置权限

这个是和消费者所属的组相关,如果所有的消费者都属于一个消费者组,那么一个消费者能消费到该消息,如果均属于不同的组,所有消费者均能消费到该消息

如果你想一对一消费,你多个tomcat或者多个线程设置同一个consumerGroup就可以了,如果你想指定某个消费者消费某个pattion可以这样

 KafkaConsumer<String, String> consumer = new KafkaConsumer<>(props);
consumer.assign(Arrays.asList(new TopicPartition("kafka.wshare.match_meta_data.topic",0)));