首页 > 解决方案 > 订阅多个主题时,Kafka 事件未从所有主题接收

问题描述

使用 Spring kafka 我创建了一个消费者,我有 3 个主题,消费者成功订阅了所有主题。但我只接收来自一个主题的事件。当我尝试使用单个主题的消费者时,它适用于所有主题。但是当我对所有主题使用单个消费者时,它只接收一个主题的事件,并且这个主题并不一致。我的配置如下所示

Map<String, Object> configs = new HashMap<>(); configs.put(ConsumerConfig.BOOTSTRAP_SERVERS_CONFIG, config.getServers()); configs.put(ConsumerConfig.GROUP_ID_CONFIG, config.getGroup()); configs.put(ConsumerConfig.KEY_DESERIALIZER_CLASS_CONFIG, StringDeserializer.class); configs.put(ConsumerConfig.VALUE_DESERIALIZER_CLASS_CONFIG, StringDeserializer.class); configs.put(ConsumerConfig.ENABLE_AUTO_COMMIT_CONFIG, false);

事件侦听器注释是

@KafkaListener(topics = "#{'${kafka.consumer.topic}'.split(',')}", groupId = "${kafka.consumer.group}")

标签: springspring-bootapache-kafkaspring-kafka

解决方案


推荐阅读