Получение сообщений из Kafka

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

Читать далее Получение сообщений из Kafka

Отправка сообщений в Kafka

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

Читать далее Отправка сообщений в Kafka

Запуск Apache Kafka с ZooKeeper

С выпуском версии 4.0 Apache Kafka лишится поддержки ZooKeeper, и единственным вариантом развёртывания кластера останется использование KRaft, о котором было рассказано в одной из предыдущих статей. Несмотря на это, я предлагаю в этой статье рассмотреть вариант развёртывания кластера Apache Kafka с кворумом Apache ZooKeeper.

Читать далее Запуск Apache Kafka с ZooKeeper

Запуск Apache ZooKeeper в кластере

Сервис Apache ZooKeeper применяется в качестве сервера метаданных и конфигураций сервисов и часто используется для реализации механизма поиска сервисов (Service Discovery). Например, в Apache Kafka, популярном инструменте для организации обмена сообщениями в распределенных системах, до версии 4.0 ZooKeeper может использоваться в качестве хранилища метаданных кластера. Как и любой другой компонент распределённой системы ZooKeeper желательно запускать в кластере для обеспечения отказоустойчивости системы, чему посвящена данная статья.

Читать далее Запуск Apache ZooKeeper в кластере

Apache Kafka: партиции и реплики

Проект Apache Kafka разрабатывался с прицелом на применение в высоко нагруженных и отказоустойчивых системах. Кроме развёртывания сервисов в кластере, которому была посвящена предыдущая статья, высокую производительность и отказоустойчивость обеспечивают партиции и реплики.

Читать далее Apache Kafka: партиции и реплики

Запуск Apache Kafka в кластере

Как и любой другой компонент распределённой информационной системы Apache Kafka в условиях реальной эксплуатации рекомендуется разворачивать в кластере для обеспечения отказоустойчивости. Кластер Kafka может быть развёрнут в двух вариантах: с использованием KRaft и Apache ZooKeeper.

Читать далее Запуск Apache Kafka в кластере

Начало работы с Kafka

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

Читать далее Начало работы с Kafka

Про очереди сообщений

Очереди сообщений — это очень большая тема, которую невозможно охватить парой статьей или роликов. Отчасти это связано с тем, что в настоящее время существует большое количество систем обмена сообщениями, реализующих схожие механизмы, но делающих это по-разному. В этой статье я хочу попытаться в общих чертах рассказать о том, что такое очереди сообщений, брокеры очередей сообщений, потоки (стримы), а также о том, зачем они нужны. В последующих статьях я постараюсь более предметно рассказать о конкретных реализациях очередей сообщений и их практическом применении.

Читать далее Про очереди сообщений

Redis: основные типы данных и операции

Redis — это популярная нереляционная база данных, реализующая хранилище типа «Ключ — Значение». Данная статья посвящена основным типам данных и операциям и является вступительной к серии статей о Redis, в рамках которой будет рассматриваться и работа с Redis при помощи Spring Data.

Читать далее Redis: основные типы данных и операции

Установка JDK в Windows

В предыдущей статье вкратце было рассказано про JDK, JRE И JVM, а в этой статье я предлагаю рассмотреть три способа установки JDK в операционной системе Windows: при помощи инсталлятора, утилитой winget и вручную.

Читать далее Установка JDK в Windows