Apache Kafka: распределенная система обмена сообщениями нового поколения



Apache Kafka обеспечивает высокую пропускную способность и масштабируемые системы обмена сообщениями, что делает его популярным в аналитике в реальном времени. Узнайте, как руководство Apache kafka может вам помочь

В современном мире, данные - главный ингредиент интернет-приложений и обычно включает в себя следующее:





  • Посещения страницы и клики
  • Действия пользователя
  • События, соответствующие логинам
  • Действия в социальных сетях, такие как лайки, публикации и комментарии
  • Метрики для конкретного приложения (например, журналы, время загрузки страницы, производительность и т. Д.)

Эта данные можно использовать для запуска аналитики в реальном времени служат различным целям, некоторые из которых:

  • Доставка рекламы
  • Отслеживание ненормального поведения пользователей
  • Отображение поиска на основе релевантности
  • Показаны рекомендации, основанные на предыдущих действиях

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



Решение: Один из способов решить эту проблему - использовать систему обмена сообщениями. Системы обмена сообщениями обеспечивают бесшовную интеграцию между распределенными приложениями с помощью сообщений.

что такое keyerror в Python

apache-kafka-next-generation-distributed-messaging-system

Апач Кафка:



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

Архитектура и терминология Kafka:

Тема: Поток сообщений, относящихся к определенной категории, называется темой.

Режиссер : Продюсером может быть любое приложение, которое может публиковать сообщения в теме.

Потребитель: Потребителем может быть любое приложение, которое подписывается на темы и потребляет сообщения.

Брокер: Кластер Kafka - это набор серверов, каждый из которых называется брокером.

Kafka масштабируется и позволяет создавать кластеры нескольких типов.

как реализовать связанный список в c
  • Кластер с одним узлом и одним брокером
  • Кластер с одним узлом и несколькими брокерами
  • Кластер с несколькими узлами и несколькими брокерами

Единый брокер с одним узлом

Какова роль ZooKeeper?

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

Одноузловые несколько брокеров

Множественные узлы Множественные брокеры

Кафка @ LinkedIn

LinkedIn Newsfeed поддерживается Kafka

Рекомендации LinkedIn основаны на Kafka

Уведомления LinkedIn поддерживаются Kafka

Заметка: Помимо этого, LinkedIn использует Kafka для многих других задач, таких как мониторинг журналов, показатели производительности, улучшение поиска и другие.

Кто еще пользуется Кафкой?

DataSift: DataSift использует Kafka в качестве сборщика событий мониторинга и для отслеживания потребления потоков данных пользователями в режиме реального времени.

Wooga: Wooga использует Kafka для сбора и обработки данных отслеживания из всех своих игр на Facebook (размещенных у разных провайдеров) в центральном месте.

Spongecell: Spongecell использует Kafka для запуска всей своей аналитики и мониторинга конвейера, управляя приложениями как в реальном времени, так и ETL.

Loggly: Loggly - это самая популярная в мире облачная система управления журналами. Он использует Kafka для сбора журналов.

Сравнительное исследование: Kafka против ActiveMQ против RabbitMQ

У Kafka более эффективный формат хранения: в среднем каждое сообщение имеет накладные расходы в 9 байт в Kafka по сравнению со 144 байтами в ActiveMQ.

И в ActiveMQ, и в RabbitMQ брокеры поддерживают состояние доставки каждого сообщения, записывая на диск, но в случае Kafka запись на диск отсутствует, что ускоряет работу.

тестирование на основе данных в селене

Благодаря широкому внедрению Kafka в производство, он выглядит многообещающим решением для решения реальных проблем. Обучение Apache Kafka может помочь вам опередить своих коллег в карьере аналитика в реальном времени. Начните с учебника Apache Kafka Вот .

Есть вопрос к нам? Пожалуйста, отметьте это в разделе комментариев, и мы свяжемся с вами.

Похожие сообщения:

Что вам нужно для карьеры в области аналитики в реальном времени