Spring 卡夫卡监听器

Spring Kafka Listener

我正在使用 KafkaListener 来监听多个主题,每个主题有 20 个分区,下面是我的配置。所以这里是否每个主题将共享相同的 20 个线程(或者)每个主题将获得自己的 20 个线程 线程 ?

导入org.springframework.kafka.annotation.KafkaListener;

KafkaListener(topics = { "topic1", "topic2","topic3"},
        concurrency = "20",
        clientIdPrefix = "client1",
        groupId = "group1")

将有 20 个线程,每个线程消耗每个主题的一个分区。

如果你想要单独的线程,你可以在方法中添加3个@KafkaListener注解,每个注解配置1个主题,或者将并发设置为60并使用自定义分区分配器来确保每个消费者只获取一个分区。