Подписка на курсы Слёрма: 24 курса в полном доступе
Блог Слёрм

Kafka за 5 минут: как понять архитектуру и основные принципы работы

Рассказали простыми словами об основах Kafka 👇. Новичкам будет полезно.

Что такое Kafka?

  • это распределённая потоковая платформа;
  • работает как высоконагруженный «почтовый сервис» для данных;
  • обрабатывает миллионы сообщений в секунду.

Uber, Netflix, LinkedIn и др. используют Kafka для работы с данными в реальном времени

Архитектура Kafka

  • брокеры — серверы, которые хранят и передают данные;
  • кластер — группа брокеров, работающих вместе;
  • ZooKeeper (или KRaft) — координатор работы кластера.

Проще говоря, это как почтовое отделение с множеством сортировщиков

Темы (Topics) и партиции

  • тема — «почтовый ящик» для определённого типа данных;
  • партиции — параллельные "отделы" внутри темы;
  • сообщения в партициях упорядочены.

Важно: Чем больше партиций — тем выше пропускная способность

Producers & Consumers

  • Producer — отправитель сообщений (пишет в топики);
  • Consumer — получатель (читает из топиков);
  • Consumer Groups — группа потребителей, делящих нагрузку.

Если producer — почтальон, то consumer — человек, проверяющий почту

Почему Kafka — не БД?

  • данные хранятся ограниченное время (в соответствии с выставленными настройками);
  • нет сложных запросов — только последовательное чтение;
  • оптимизирована для потоковой передачи, а не хранения.

Главное отличие: В БД вы храните данные, в Kafka — подписываетесь на их поток.

Научиться работать с Kafka, изучить архитектуру и понять логику работы с Kafka на примере бизнес-кейсов можно на углубленном курсе «Apache Kafka для разработчиков». Будем практиковаться на Java, но основные принципы и best-practice применимы и к другим языкам.

Узнать подробности и прочитать отзывы о курсе — по ссылке.
Apache Kafka