title: Ð Ð°Ð·ÑÐ°Ð±Ð¾ÑÐºÐ° MQTT Ð±ÑÐ¾ÐºÐµÑÐ° Ñ Ð¸Ð½ÑÐµÐ³ÑÐ°ÑÐ¸ÐµÐ¹ Apache Kafka Ð´Ð»Ñ Ð¿Ð¾Ð²ÑÑÐµÐ½Ð¸Ñ Ð³Ð¸Ð±ÐºÐ¾ÑÑÐ¸ Ð¸ Ð¼Ð°ÑÑÑÐ°Ð±Ð¸ÑÑÐµÐ¼Ð¾ÑÑÐ¸ ÑÐ¸ÑÑÐµÐ¼ Ð¾Ð±Ð¼ÐµÐ½Ð° ÑÐ¾Ð¾Ð±ÑÐµÐ½Ð¸ÑÐ¼Ð¸
title: Ð²ÑÐ¿ÑÑÐºÐ½Ð°Ñ ÐºÐ²Ð°Ð»Ð¸ÑÐ¸ÐºÐ°ÑÐ¸Ð¾Ð½Ð½Ð°Ñ ÑÐ°Ð±Ð¾ÑÐ° Ð±Ð°ÐºÐ°Ð»Ð°Ð²ÑÐ°
titleType: Subtitle
title: Development of an MQTT broker with Apache Kafka integration to increase the flexibility and scalability of messaging systems
Creators: name: Ð¢Ð¸ÑÐ¾Ð½Ð¾Ð², ÐÐ»ÐµÐºÑÐ°Ð½Ð´Ñ
Publisher: name: Ð¡Ð°Ð½ÐºÑ-ÐÐµÑÐµÑÐ±ÑÑÐ³ÑÐºÐ¸Ð¹ Ð¿Ð¾Ð»Ð¸ÑÐµÑÐ½Ð¸ÑÐµÑÐºÐ¸Ð¹ ÑÐ½Ð¸Ð²ÐµÑÑÐ¸ÑÐµÑ ÐÐµÑÑÐ° ÐÐµÐ»Ð¸ÐºÐ¾Ð³Ð¾
Year: 2024
Subjects: ÑÐ¼Ð½ÑÐ¹ Ð´Ð¾Ð¼
IoT
Ð±ÑÐ¾ÐºÐµÑ MQTT
Apache Kafka
Netty
Java
smart home
MQTT broker

description: Ð¢ÐµÐ¼Ð° Ð²ÑÐ¿ÑÑÐºÐ½Ð¾Ð¹ ÐºÐ²Ð°Ð»Ð¸ÑÐ¸ÐºÐ°ÑÐ¸Ð¾Ð½Ð½Ð¾Ð¹ ÑÐ°Ð±Ð¾ÑÑ: âÐ Ð°Ð·ÑÐ°Ð±Ð¾ÑÐºÐ° MQTT Ð±ÑÐ¾ÐºÐµÑÐ° Ñ Ð¸Ð½ÑÐµÐ³ÑÐ°ÑÐ¸ÐµÐ¹ Apache Kafka Ð´Ð»Ñ Ð¿Ð¾Ð²ÑÑÐµÐ½Ð¸Ñ Ð³Ð¸Ð±ÐºÐ¾ÑÑÐ¸ Ð¸ Ð¼Ð°ÑÑÑÐ°Ð±Ð¸ÑÑÐµÐ¼Ð¾ÑÑÐ¸ ÑÐ¸ÑÑÐµÐ¼ Ð¾Ð±Ð¼ÐµÐ½Ð° ÑÐ¾Ð¾Ð±ÑÐµÐ½Ð¸ÑÐ¼Ð¸â. Ð¦ÐµÐ»ÑÑ Ð´Ð°Ð½Ð½Ð¾Ð¹ ÑÐ°Ð±Ð¾ÑÑ ÑÐ²Ð»ÑÐµÑÑÑ ÑÐ°Ð·ÑÐ°Ð±Ð¾ÑÐºÐ° Ð¸ ÑÐµÐ°Ð»Ð¸Ð·Ð°ÑÐ¸Ñ Ð¼Ð°ÑÑÑÐ°Ð±Ð¸ÑÑÐµÐ¼Ð¾Ð³Ð¾ MQTT Ð±ÑÐ¾ÐºÐµÑÐ° ÑÐ¾Ð¾Ð±ÑÐµÐ½Ð¸Ð¹, ÐºÐ¾ÑÐ¾ÑÑÐ¹ Ð±ÑÐ´ÐµÑ Ð¿Ð¾Ð´Ð´ÐµÑÐ¶Ð¸Ð²Ð°ÑÑ Ð¿ÑÐ¾ÑÐ¾ÐºÐ¾Ð»Ñ MQTT Ð¸ WebSocket, Ð¸Ð½ÑÐµÐ³ÑÐ°ÑÐ¸Ñ Ñ ÑÐ°ÑÐ¿ÑÐµÐ´ÐµÐ»ÐµÐ½Ð½Ð¾Ð¹ Ð¿Ð»Ð°ÑÑÐ¾ÑÐ¼Ð¾Ð¹ Ð´Ð»Ñ Ð¾Ð±ÑÐ°Ð±Ð¾ÑÐºÐ¸ Ð¸ Ð¿ÐµÑÐµÐ´Ð°ÑÐ¸ Ð¿Ð¾ÑÐ¾ÐºÐ¾Ð²ÑÑ Ð´Ð°Ð½Ð½ÑÑ â Kafka, Ð° ÑÐ°ÐºÐ¶Ðµ Ð¸Ð¼ÐµÑÑ Ð³Ð¸Ð±ÐºÑÑ ÑÐ¸ÑÑÐµÐ¼Ñ Ð°ÑÑÐµÐ½ÑÐ¸ÑÐ¸ÐºÐ°ÑÐ¸Ð¸, Ð¾Ð±ÐµÑÐ¿ÐµÑÐ¸Ð²Ð°ÑÑÑÑ Ð±ÐµÐ·Ð¾Ð¿Ð°ÑÐ½Ð¾ÑÑÑ Ð¿ÐµÑÐµÐ´Ð°ÑÐ¸ Ð´Ð°Ð½Ð½ÑÑ Ð² ÑÐµÑÐ¸. ÐÐ¾Ð¼Ð¸Ð¼Ð¾ Ð²ÑÐµÑ Ð¿ÑÐµÐ¸Ð¼ÑÑÐµÑÑÐ² Ð¸Ð½ÑÐµÐ³ÑÐ°ÑÐ¸Ð¸, Ð´Ð°Ð½Ð½ÑÐ¹ Ð±ÑÐ¾ÐºÐµÑ Ð¿ÑÐµÐ´Ð¿Ð¾Ð»Ð°Ð³Ð°ÐµÑ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ðµ ÐµÐ´Ð¸Ð½Ð¾Ð³Ð¾ Ð¸Ð½ÑÐµÑÑÐµÐ¹ÑÐ° Ð´Ð»Ñ Ð¾Ð±ÑÐµÐ½Ð¸Ñ Ð±ÑÐ¾ÐºÐµÑÐ° Ñ ÑÐµÑÐ²Ð¸ÑÐ°Ð¼Ð¸ Ð¿Ð¾ Ð¾Ð±ÑÐ°Ð±Ð¾ÑÐºÐµ Ð¾ÑÐ¿ÑÐ°Ð²Ð»ÐµÐ½Ð½ÑÑ ÑÐ¾Ð¾Ð±ÑÐµÐ½Ð¸Ð¹, ÑÑÐ¾ ÑÐ¿ÑÐ¾ÑÐ°ÐµÑ Ð¸Ñ ÑÐ°Ð·ÑÐ°Ð±Ð¾ÑÐºÑ Ð¸ Ð¿Ð¾Ð´Ð´ÐµÑÐ¶Ð°Ð½Ð¸Ðµ. Ð Ð°Ð±Ð¾ÑÐ° Ð²ÐºÐ»ÑÑÐ°ÐµÑ Ð² ÑÐµÐ±Ñ Ð¾Ð±Ð·Ð¾Ñ Ð¿ÑÐµÐ¸Ð¼ÑÑÐµÑÑÐ² Ð¸ Ð½ÐµÐ´Ð¾ÑÑÐ°ÑÐºÐ¾Ð² ÑÑÑÐµÑÑÐ²ÑÑÑÐ¸Ñ Ð±ÑÐ¾ÐºÐµÑÐ¾Ð² MQTT Ð¸ Ð¸Ñ ÑÑÐ°Ð²Ð½Ð¸ÑÐµÐ»ÑÐ½ÑÐ¹ Ð°Ð½Ð°Ð»Ð¸Ð·, Ð²ÑÐ±Ð¾Ñ Ð¸ Ð¾Ð±Ð¾ÑÐ½Ð¾Ð²Ð°Ð½Ð¸Ðµ Ð¿Ð¾Ð´-ÑÐ¾Ð´ÑÑÐ¸Ñ Ð¸Ð½ÑÑÑÑÐ¼ÐµÐ½ÑÐ¾Ð², Ð¿ÑÐ¾ÐµÐºÑÐ¸ÑÐ¾Ð²Ð°Ð½Ð¸Ðµ Ð³Ð¸Ð±ÐºÐ¾Ð¹ Ð°ÑÑÐ¸ÑÐµÐºÑÑÑÑ Ð±ÑÐ¾ÐºÐµÑÐ° Ð¸ ÑÑÐµÑ ÑÑÐµÐ±Ð¾Ð²Ð°Ð½Ð¸Ð¹ Ðº Ð¼Ð°ÑÑÑÐ°Ð±Ð¸ÑÑÐµÐ¼Ð¾ÑÑÐ¸, Ð½Ð°Ð´ÐµÐ¶Ð½Ð¾ÑÑÐ¸ Ð¸ Ð¿ÑÐ¾Ð¸Ð·Ð²Ð¾Ð´Ð¸ÑÐµÐ»ÑÐ½Ð¾ÑÑÐ¸, ÐµÐ³Ð¾ ÑÐµÐ°Ð»Ð¸Ð·Ð°ÑÐ¸Ñ, Ð° ÑÐ°ÐºÐ¶Ðµ Ð²ÑÑÐ²Ð»ÐµÐ½Ð¸Ðµ Ð²Ð¾Ð·Ð½Ð¸ÐºÑÐ¸Ñ Ð¿ÑÐ¾Ð±Ð»ÐµÐ¼ Ð² Ð¿ÑÐ¾ÑÐµÑÑÐµ Ð½Ð°Ð¿Ð¸ÑÐ°Ð½Ð¸Ñ ÐºÐ¾Ð´Ð° Ð¸ Ð¾Ð±Ð·Ð¾Ñ Ð¸Ñ ÑÑÑÐµÐºÑÐ¸Ð²Ð½ÑÑ ÑÐµÑÐµÐ½Ð¸Ð¹. Ð ÑÐµÐ·ÑÐ»ÑÑÐ°ÑÐµ Ð±ÑÐ» ÑÐ°Ð·ÑÐ°Ð±Ð¾ÑÐ°Ð½ MQTT Ð±ÑÐ¾ÐºÐµÑ ÑÐ¾Ð¾Ð±ÑÐµÐ½Ð¸Ð¹, ÐºÐ¾ÑÐ¾ÑÑÐ¹ Ð¿Ð¾Ð´Ð´ÐµÑÐ¶Ð¸Ð²Ð°ÐµÑ Ð¿ÑÐ¾ÑÐ¾ÐºÐ¾Ð»Ñ MQTT Ð¸ WebSocket Ð¸Â  Ð¸Ð½ÑÐµÐ³ÑÐ¸ÑÑÐµÑÑÑ Ñ Ð¿Ð»Ð°ÑÑÐ¾ÑÐ¼Ð¾Ð¹ Ð´Ð»Ñ Ð¾Ð±ÑÐ°Ð±Ð¾ÑÐºÐ¸ Ð¸ Ð¿ÐµÑÐµÐ´Ð°ÑÐ¸ Ð¿Ð¾ÑÐ¾ÐºÐ¾Ð²ÑÑ Ð´Ð°Ð½Ð½ÑÑ â Apache Kafka.
description: Topic of the final qualifying work: âDevelopment of an MQTT broker with Apache Kafka integration to increase the flexibility and scalability of messaging systemsâ. The goal of this work is to develop and implement a scalable MQTT mes-sage broker that will support the MQTT and WebSocket protocols, integration with the distributed platform for processing and transmitting streaming data - Kafka and have a flexible authentication system that ensures the security of data transmission on the network. In addition to all the advantages of integration, this broker involves the creation of a single interface for communication between the broker and services for processing sent messages, which simplifies their devel-opment and maintenance. The work includes a review of the advantages and disadvantages of existing MQTT brokers and their comparative analysis, selection and justification of suit-able tools, design of a flexible broker architecture and consideration of require-ments for scalability, reliability and performance, its implementation, as well as identification of problems encountered during the coding process and review their effective solutions. As a result, an MQTT message broker was developed that supports the MQTT and WebSocket protocols and integrates with the platform for processing and transmitting streaming data - Apache Kafka.