Producer & Consumer работает только на 1 порту - PullRequest
0 голосов
/ 08 января 2019

Я только изменил пути к журналам и данным zookeeper в конфигах.

Запуск зоопарка:

    zookeeper-server-start.bat D:\__programs\kafka_2.12-2.1.0\config\zookeeper.properties

Бегущая кафка:

    kafka-server-start.bat D:\__programs\kafka_2.12-2.1.0\config\server.properties

Работающий потребитель:

    kafka-console-consumer.bat -bootstrap-server localhost:2181 -topic mytopic

Бегущий производитель:

    kafka-console-producer.bat -broker-list localhost:9092 -topic mytopic

Таким образом, потребитель может получать сообщения только в том случае, если он находится на одном порту (9092) с производителем.

В чем здесь проблема?

Ответы [ 2 ]

0 голосов
/ 08 января 2019

Потребители и производители являются клиентами сервера Kafka, поэтому они оба могут использовать один и тот же порт, который мы настроили в качестве клиентского порта в файле server.properties.

Порт настроен в файле config/server.properties с любым из этих параметров

  • Advertise. Listeners
  • 1009 * слушатели *

Зависит от конфигурации и протокола, потребители и производители могут использовать несколько портов. Вы можете найти подробную информацию о параметрах брокера здесь

0 голосов
/ 08 января 2019

Сервер начальной загрузки и список брокеров, оба должны указывать на один и тот же

Поскольку вы создаете события на локальном хосте: 9092, вы должны использовать то же самое в потребителе, как показано ниже:

kafka-console-producer.bat --broker-list localhost:9092 --topic mytopic

kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic mytopic

P.S. Обычно 2181 порт назначается процессу zookeeper. И здесь localhost:2181 будет относиться к Zookeeper.

...