Перейти к основному содержимому

25 записей с тегом "Kafka"

Посмотреть все теги

· 7 мин. чтения

1. Обзор

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

Таким образом, мы можем выбирать между несколькими продуктами. Apache Foundation предоставляет ActiveMQ и Kafka, которые мы сравним друг с другом в этой статье.

2. Общие факты

2.1. Активный МК

· 7 мин. чтения

1. Введение

В этом руководстве мы рассмотрим базовую настройку подключения клиента Spring Boot к брокеру Apache Kafka с использованием аутентификации SSL.

Secure Sockets Layer (SSL) фактически устарел и был заменен Transport Layer Security (TLS) с 2015 года. Однако по историческим причинам Kafka (и Java) по-прежнему ссылаются на «SSL», и мы будем следовать этому соглашению в этой статье. также.

2. Обзор SSL

По умолчанию Apache Kafka отправляет все данные в виде открытого текста и без какой-либо аутентификации.

· 4 мин. чтения

1. Обзор

В этом кратком руководстве мы узнаем, как составить список всех тем в кластере Apache Kafka.

Во-первых, мы настроим одноузловой кластер Apache Kafka и Zookeeper . Затем мы спросим этот кластер о его темах.

2. Настройка Кафки

Прежде чем перечислять все темы в кластере Kafka, давайте настроим тестовый кластер Kafka с одним узлом в три шага:

· 7 мин. чтения

1. Введение

В этой статье мы увидим, как настроить Kafka Streams с помощью Spring Boot. Kafka Streams — это клиентская библиотека, созданная поверх Apache Kafka. ^ Он позволяет обрабатывать неограниченный поток событий декларативным образом.

Некоторыми реальными примерами потоковой передачи данных могут быть данные датчиков, потоки событий фондового рынка и системные журналы. В этом уроке мы создадим простое приложение для потоковой передачи подсчета слов. Давайте начнем с обзора Kafka Streams, а затем настроим пример вместе с его тестами в Spring Boot.

2. Обзор

Kafka Streams обеспечивает двойственность между темами Kafka и таблицами реляционной базы данных. Это позволяет нам выполнять такие операции, как объединение, группировка, агрегирование и фильтрация одного или нескольких потоковых событий.

· 8 мин. чтения

1. Обзор

Apache Kafka — мощная, распределенная, отказоустойчивая система обработки потоков. В предыдущем уроке мы узнали, как работать со Spring и Kafka .

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

Во-первых, мы начнем с рассмотрения того, как использовать и настраивать встроенный экземпляр Kafka.

Затем мы увидим, как мы можем использовать популярный фреймворк Testcontainers из наших тестов.

2. Зависимости

· 5 мин. чтения

1. Обзор

Docker — один из самых популярных контейнерных движков, используемых в индустрии программного обеспечения для создания, упаковки и развертывания приложений.

В этом руководстве мы узнаем, как настроить Apache Kafka с помощью Docker.

2. Настройка одного узла

· 9 мин. чтения

1. Обзор

Apache Kafka — это масштабируемая, высокопроизводительная платформа с малой задержкой, которая позволяет считывать и записывать потоки данных, как система обмена сообщениями . Мы можем довольно легко начать с Kafka в Java .

Spark Streaming является частью платформы Apache Spark , обеспечивающей масштабируемую, высокопроизводительную и отказоустойчивую обработку потоков данных . Хотя Spark написан на Scala, он предлагает API-интерфейсы Java для работы с .

Apache Cassandra — это распределенное хранилище данных NoSQL с широкими столбцами . Более подробная информация о Cassandra доступна в нашей предыдущей статье.

В этом руководстве мы объединим их, чтобы создать хорошо масштабируемый и отказоустойчивый конвейер данных для потока данных в реальном времени .

· 5 мин. чтения

1. Введение

Во время передачи сообщений в Apache Kafka клиент и сервер договариваются об использовании общего синтаксического формата. Apache Kafka предоставляет конвертеры по умолчанию (такие как String и Long ), но также поддерживает пользовательские сериализаторы для конкретных случаев использования. В этом уроке мы увидим, как их реализовать.

2. Сериализаторы в Apache Kafka

Сериализация — это процесс преобразования объектов в байты . Десериализация — это обратный процесс — преобразование потока байтов в объект. Короче говоря, он преобразует контент в удобочитаемую и интерпретируемую информацию .

Как мы уже упоминали, Apache Kafka предоставляет сериализаторы по умолчанию для нескольких основных типов и позволяет нам реализовывать собственные сериализаторы:

· 5 мин. чтения

1. Обзор

Apache Kafka — очень популярная платформа потоковой передачи событий, которая часто используется с Docker . Часто у людей возникают проблемы с установлением соединения с Kafka, особенно когда клиент работает не в той же сети Docker или на том же хосте. В первую очередь это связано с неправильной настройкой рекламируемых прослушивателей Kafka.

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

2. Настройте Кафку

Прежде чем мы попытаемся установить соединение, нам нужно запустить брокера Kafka с помощью Docker . Вот фрагмент нашего файла docker-compose.yaml :

· 5 мин. чтения

1. Обзор

В этой статье мы рассмотрим библиотеку KafkaStreams .

KafkaStreams разработан создателями Apache Kafka . Основная цель этой части программного обеспечения — позволить программистам создавать эффективные потоковые приложения в режиме реального времени, которые могут работать как микросервисы.

KafkaStreams позволяет нам получать из тем Kafka, анализировать или преобразовывать данные и, возможно, отправлять их в другую тему Kafka.

Чтобы продемонстрировать KafkaStreams, мы создадим простое приложение, которое читает предложения из темы, подсчитывает вхождения слов и печатает количество слов.

Важно отметить, что библиотека KafkaStreams не является реактивной и не поддерживает асинхронные операции и обработку обратного давления.