Kafka для google Pub/Sub с помощью Sink Connector

Извините за основной вопрос.

Требование: Необходимо отправить полезную нагрузку json из весеннего загрузочного приложения в подписку google pub.

Я начал внедрять производителя kafka и публиковать сообщения в темах, а оттуда потребитель kafka получает json.

Теперь мне нужно отправить полезную нагрузку json от потребителя kafka в pub/sub google. Я в замешательстве, должен ли мне для этого понадобиться потребитель kafka. Или просто от производителя kafka в сабвуфер google pub, который я могу отправить, используя kafka Connector.jar и настроив темы в свойствах. Любая помощь очень ценится для этой реализации

Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
1
1
3 312
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Если вы хотите получать сообщения от Kafka в Google Cloud Pub/Sub, вам не нужно писать собственный потребитель. Вы можете создать экземпляр Соединитель Google Cloud Pub/Sub Kafka. Служба Кафка Коннект обычно является частью самого развертывания Kafka, поэтому вам просто нужно запустить ее экземпляр, настроенный для запуска коннектора синхронизации Cloud Pub/Sub. В файле README для соединителя подробно описаны шаги, которые необходимо предпринять, но вкратце:

  1. Загрузите последний релиз и соберите его с помощью команды mvn package.
  2. Скопируйте target/cps-kafka-connector.jar в место на вашем пути Java, чтобы он был доступен при запуске Kafka Connect.
  3. Скопируйте конфиг приемника и измените его, чтобы он указывал на соответствующий проект и тему Cloud Pub/Sub, а также на соответствующие темы Kafka.
  4. Сделайте копию config/connect-standalone.properties или config/connect-distributed.properties в зависимости от того, хотите ли вы, чтобы работал один экземпляр или несколько экземпляров соединителя.
  5. Обновите свойства key.converter и value.converter, чтобы они были org.apache.kafka.connect.storage.StringConverter. Таким образом, коннектор не будет пытаться интерпретировать передаваемые данные, а просто передаст JSON прямо в Cloud Pub/Sub.
  6. Запустите коннектор с помощью соответствующей команды на основе автономного или распределенного коннектора, например, bin/connect-standalone.sh <standalone config file> <connector config file>.

Сообщения теперь должны поступать из Kafka в Google Cloud Pub/Sub. Если вы просто используете Kafka для перехода от Spring Boot к Cloud Pub/Sub, вы можете избежать шага Kafka, настроив адаптер исходящего канала для прямой отправки сообщений в Cloud Pub/Sub.

Спасибо @Kamal Aboul-Hosn за подробное объяснение. Очень полезно

krthk 21.03.2019 18:21

Начиная с v0.5 Alpha они предоставляют готовая банка с выпуском. Мы можем просто использовать это и избежать шага по сборке пакета из исходного кода :)

Amit Yadav 22.02.2021 08:27

Другие вопросы по теме