Короткий ответ - нет, вам не нужно создавать несколько конфигураций для каждой темы.
Прежде чем идти дальше, я думаю, что стоит уточнить, что groupId
- это группа, к которой относится процесс-потребитель, и topic
, которая будет потребляться процессом-потребителем, - это две разные вещи.
С предложенным ниже предложением Вы скажете Потребителю, что он принадлежит к группе topic_name , и больше ничего.
props.put(GROUP_ID_CONFIG, "topic_name");
Если вы хотите, чтобы Потребитель считывал данные из нескольких тем, существует метод подписка , который получает Коллекции в качестве параметра, таким образом выукажите все темы для чтения данных без необходимости создания новой конфигурации для каждой темы.
Пожалуйста, посмотрите этот пример, вы увидите метод, который я упомянул
// Subscribe to the topic.
consumer.subscribe(Collections.singletonList(TOPIC));