Что такое Kafka?

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

Положение спасают распределенные системы на основе событий. Для работы с микросервисами традиционная запросно-ответная парадигма с протоколом REST/HTTP просто не подходит. Каждое подключение приходится открывать, отправлять запрос, получать ответ, закрывать: действий много, а времени мало.

Для микросервисов намного лучше модель подписки. Издатели отправляют сообщения брокерам/серверам, а подписчики у тех же брокеров потребляют  —  и никакого лишнего ожидания:

Kafka  —  ведущая технология потоковой передачи событий. Ей доверяют данные в более чем 80% всех компаний из Fortune 100: она быстрая, отказоустойчивая и масштабируемая.

Но Kafka небеспроблемна. Это очень сложная система, применять ее нелегко. Когда в кластере что-то идет не так, выявить проблему бывает особенно трудно.

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

Представляем KafkaCompass

С KafkaCompass пользователи могут:

  • понять траекторию кластеров во времени;
  • контролировать их содержимое;
  • анализировать их метрики.

Функционал

Для доступа к кластеру и просмотра метрик производительности в KafkaCompass ключи к Confluent Cloud и кластеру шифруются. Когда текущие данные получены, в приложении эти данные надежно сохраняются для последующего доступа к журналу производительности кластера.

Имея подробные снимки состояний кластера в динамике, легко визуализировать влияние на него внутренних и внешних изменений. Так у разработчиков Kafka появляется больше возможностей для экспериментов и оптимизации кластеров.

А пользователи могут просматривать и обновлять данные о кластере в дашборде, в режиме статистики производительности Performance Statistics. Вместе с удобными визуализациями эти диаграммы очень полезны для мониторинга работоспособности кластера:

В режиме мониторинга содержимого Content Monitoring просматриваются сообщения, находящиеся в данный момент в их разделах. На этой же странице в кластер вносятся изменения: добавляются или удаляются темы, пишутся новые сообщения:

KafkaCompass находится на стадии альфа-тестирования: планируется довести до идеала пользовательское взаимодействие и добавить функционал для анализа кластеров.

Это продукт с открытым исходным кодом, и помощь участников сообщества в доработке приложения приветствуется.

Читайте также:

Читайте нас в TelegramVK и Дзен


Перевод статьи Daria Mordvinov: Don’t get lost while working with your Kafka clusters — grab a compass!

Предыдущая статьяВыполнение одновременных сетевых запросов в Java: быстро и эффективно
Следующая статьяКакой метод глубокого клонирования в JavaScript наиболее эффективный  —  исследование