Как прослушать универсальный потребитель Kafka

#apache-kafka #kafka-consumer-api

#apache-kafka #kafka-consumer-api

Вопрос:

Я ищу решение, в котором на сервере Kafka создано несколько тем, и на основе другого приложения оно попытается опубликовать сообщение от любого производителя, но мы не знаем, как запустить соответствующего потребителя на основе производителя.

Текущее решение, которое мы внедрили, заключается в том, что мы запустили всех потребителей, и все будут слушать, и когда какой-либо производитель опубликует сообщение, оно будет получено соответствующим потребителем, и это неэффективный способ его достижения. У кого-нибудь есть лучшее решение?

ПРИМЕР: темы: Индия, Австралия, Сингапур

Здесь я не знаю, из какой страны я получу сообщение, поэтому мне нужно прослушать все темы, чтобы получить сообщение из любой темы. есть ли какой-нибудь эффективный способ сделать это?

Комментарии:

1. Почему вам нужны темы для каждой страны вместо использования разделов для каждой страны в одной теме? В противном случае, конечно, вам нужно будет читать из всех разделов

2. Если в будущем будет 100 тем, и прослушивание всех тем — неправильный способ. есть ли лучший способ добиться этого? . Я надеюсь, что я не единственный, кто борется за это

3. Как я уже сказал, используйте разделы от одной до нескольких тем, на которые вы можете настроить таргетинг и назначить потребителей. В противном случае, сбросьте темы в базу данных, где вы можете фактически создавать / запрашивать, используя разные поля индекса

Ответ №1:

Наконец, я добавил все необходимые разделы в файл конфигурации, и я слушаю все разделы, добавленные в файл конфигурации, и вот как я использую ит-сервис в качестве общего потребителя, который прослушивает все темы