Kafka Streams - зависимость от версии Java - PullRequest
0 голосов
/ 20 декабря 2018

Я запускаю свое приложение с Java 1.6 и планирую немного интегрировать аспекты с Kafka.

Я изучаю, стоит ли мне переходить на Kafka Consumer (используя poll ()) или использовать API-интерфейсы KafkaStreams.Нужна ли нам Java 1.7 / 1.8 для работы с Stream API?

Ответы [ 2 ]

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

Я не думаю, что Kafka официально поддерживает Java 1.6, или, по крайней мере, последние несколько версий этого не делают. Эта страница показывает совместимость JDK с различными выпусками Kafka, а минимальная требуемая версия - JDK 1.7

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

API Kafka Consumer и Kafka Streams имеют свои преимущества.Оба могут быть использованы для чтения данных из тем Кафки.Это очень сильно зависит от варианта использования, который вы пытаетесь реализовать.

Kafka Consumer - это потребительский клиент низкого уровня, где вы можете написать свое потребительское приложение для чтения тем kafka и реализовать его функциональность.Хотя Kafka Streams более выразителен.Он поддерживает DSL в стиле программирования с операциями, в которых вы можете читать данные из тем kafka, выполнять операции и записывать в другие темы kafka.

Что ж, API-интерфейс Kafka Stream построен поверх клиента Kafka для потребителя и производителя.Есть несколько примечательных особенностей Streams API, которые вы должны учитывать:

  1. Обеспечение отказоустойчивых преобразований без сохранения состояния и состояния, например сопоставление, объединение, управление окнами и агрегирование.В то время как в клиентском клиенте kafka реализация этих операций утомительна.
  2. Streams API предоставляет DSL в стиле функционального программирования со множеством операций, которые легко использовать.Также для сложной обработки имеется низкоуровневый процессор API, который можно использовать с DSL.
  3. Streams API также поддерживает интерактивные запросы для предоставления результатов в виде микросервиса.В то время как в потребителе Kafka вам нужно будет написать реализацию для этого.
  4. Streams API может читать темы Kafka, выполнять обработку и записывать в другую тему kafka.Хотя потребитель будет читать данные, а затем вам придется написать другой клиент Producer для публикации данных в темах.

Что касается версии Java, рекомендуется использовать Java 1.8, поскольку в старых версиях были некоторые уязвимости безопасности.,Но вы все равно можете работать с версией Java1.7.

...