Skip to main content

Архитектура

Apache Kafka — opensource платформа хранения и потоковой передачи событий в режиме реального времени.

Событийная архитектура (Event driven architecture, EDA): шаблон, в котором производство, обнаружение, потребление и реакция на события играют центральную роль. Преимущества:

  • Асинхронное взаимодействие, позволяющее функционировать системе при неустойчивой работе части компонентов
  • Увеличение гибкости 
  • Снижение риска каскадных ошибок

Недостатки:

  • Согласованность данных.
  • Задержки между изменением данных и получением информации об изменении.
  • Повышенные операционные издержки

Примеры задач EDA: 

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

  • анализ активности пользователей
  • сбор логов в задачах администрирования
  • детекция мошенничества
  • предсказание аварии железа

Ключевые компоненты

Кластерная структура стандартная:

Производители создают и отправляют данные, брокеры распределяют данные по потребителям, потребители получают и обрабатывают данные.

Процессы внутри одного брокера:

 

ТочкаКритерий выбораДополнительно
TopicTopic nameЗадается Producer при отправке сообщения. Обязательный параметр
Partition
Может задаваться Producer при отправке сообщения. Необязательный параметр.
Key

Group

Consumer

Если