首页 > 解决方案 > 使用来自多个主题的记录

问题描述

我一直在研究 Kafka 流编码。尝试先创建一些示例以了解。

我尝试使用以下代码订阅一个主题Consumer,并且运行良好。

try {
              while (true) {
                  consumer.subscribe(Collections.singletonList(this.topic));
                  ConsumerRecords<String, String> records = consumer.poll(1000);

                  for (ConsumerRecord<String, String> record : records) {

                      // To Retrieve Data in this Consumer
                      System.out.println("Received message: " + record.value() );            
                  }
              }
        } finally {
          consumer.close();
        }

当我想消费多个主题时,我尝试了以下示例,

try {
          while (true) {
              consumer.subscribe(Arrays.asList(topic, topic1));
              ConsumerRecords<String, String> records = consumer.poll(1000);

              for (ConsumerRecord<String, String> record : records) {

                  // To Retrieve Data in this Consumer
                  System.out.println("Received message: " + record.value() );            
              }
          }
    } finally {
      consumer.close();
    }

但这仅接收来自一个主题的记录,而不是来自两个主题的记录。有人可以指导我如何使用多个主题的记录吗?

标签: apache-kafkakafka-consumer-api

解决方案


推荐阅读