Apache kafka брокер, использующий сообщения, предназначенные для кого-то другого - PullRequest
0 голосов
/ 24 декабря 2018

У меня локальная настройка Apache Kafka, и на портах 9092 и 9093 есть всего 2 брокера (id - 0 и 1). Я создал тему и опубликовал сообщения с помощью этой команды:

bin/kafka-console.-producer.sh --broker-list localhost:9092 --topic test

Затем я использовал сообщения на другом терминале с помощью команды:

bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test

До сих пор все в порядке.Но когда я набираю команду -

bin/kafka-console.-producer.sh --broker-list localhost:9093 --topic test

и записываю некоторые сообщения, она отображается во втором терминале, где я набрал эту команду -

bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test

Почему сообщения порта 9093 публикуются в9092

1 Ответ

0 голосов
/ 24 декабря 2018

Ваш кластер состоит из двух брокеров.Не важно, какой хост вы используете для начального подключения.Используя клиент kafka, вы не указываете, от какого брокера вы потребляете или кому вы производите сообщения.Эти имена хостов предназначены только для обнаружения всего списка брокеров kafka (кластера)

Согласно документации: https://kafka.apache.org/documentation/#producerconfigs https://kafka.apache.org/documentation/#consumerconfigs

bootstrap.servers ::

Список пар хост / порт, используемых для установления начального соединения с кластером Kafka.Клиент будет использовать все серверы независимо от того, какие серверы указаны здесь для начальной загрузки - этот список влияет только на исходные хосты, используемые для обнаружения полного набора серверов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...