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



Apache Kafka осигурява висока производителност и мащабируеми системи за съобщения, което го прави популярен в анализи в реално време. Научете как урокът за Apache kafka може да ви помогне

В днешния свят, данните е основната съставка на интернет приложения и обикновено включва следното:





  • Посещения на страници и кликвания
  • Дейности на потребителите
  • Събития, съответстващи на вход
  • Дейности в социалните мрежи като харесвания, споделяния и коментари
  • Специфични за приложението метрики (например дневници, време за зареждане на страницата, производителност и т.н.)

Това данните могат да се използват за стартиране на анализи в реално време обслужващи различни цели, някои от които са:

  • Доставка на реклами
  • Проследяване на ненормално поведение на потребителя
  • Показване на търсене въз основа на уместност
  • Показване на препоръки въз основа на предишни дейности

Проблем: Събирането на всички данни не е лесно, тъй като данните се генерират от различни източници в различни формати



Решение: Един от начините за решаване на този проблем е използването на система за съобщения. Системите за съобщения осигуряват безпроблемна интеграция между разпределени приложения с помощта на съобщения.

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

Apache Kafka:



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

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

Тема: Поток от съобщения, принадлежащи към определена категория, се нарича тема

Продуцент: Производител може да бъде всяко приложение, което може да публикува съобщения в дадена тема

Консуматор : Потребител може да бъде всяко приложение, което се абонира за теми и консумира съобщенията

Брокер: Клъстерът Kafka е набор от сървъри, всеки от които се нарича брокер

как да обърнете номера в java -

Kafka е мащабируема и позволява създаването на множество видове клъстери.

  • Клъстер за единичен брокер с единичен възел
  • Клъстер за множество брокери с един възел
  • Множество възли Множество брокерски клъстер

Единичен възел Единичен брокер

Каква е ролята на ZooKeeper?

Всеки брокер на Kafka се координира с други брокери на Kafka, използвайки ZooKeeper. Производителите и потребителите се уведомяват от услугата ZooKeeper за наличието на нови брокери или неизправността на брокера в системата Kafka.

Множество брокери с един възел

Множество възли Множество брокери

Kafka @ LinkedIn

LinkedIn Newsfeed се захранва от Kafka

Препоръките на LinkedIn се предоставят от Kafka

Известията в LinkedIn се захранват от Kafka

Забележка: Отделно от това, LinkedIn използва Kafka за много други задачи като мониторинг на журнали, показатели за производителност, подобряване на търсенето и др.

Кой друг използва Kafka?

DataSift: DataSift използва Kafka като колектор за наблюдение на събития и за проследяване на потреблението от потребителите на потоци от данни в реално време

Вуга: Wooga използва Kafka за обединяване и обработка на данни за проследяване от всичките им игри във Facebook (хоствани при различни доставчици) на централно място

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

Логли: Loggly е най-популярното управление на дневници, базирано на облак в света. Той използва Kafka за събиране на трупи.

Сравнително проучване: Kafka срещу ActiveMQ срещу RabbitMQ

Kafka има по-ефективен формат за съхранение.Средно всяко съобщение има общо 9 байта в Kafka, срещу 144 байта в ActiveMQ

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

С широкото възприемане на Kafka в производството, това изглежда обещаващо решение за решаване на реални проблеми. Обучението по Apache Kafka може да ви помогне да изпреварвате своите връстници в аналитична кариера в реално време. Започнете с урок за Apache Kafka тук .

Имате въпрос към нас? Моля, споменете го в раздела за коментари и ние ще се свържем с вас.

Подобни публикации:

Какво ви е необходимо за кариера в Анализ в реално време