Distributed MQTT Broker: A Load-Balanced Redis-Based Architecture

Rohan Doshi, SANIKA INAMDAR, Tanmay Karmarkar, Madhuri Wakode · 2024

The Internet of Things (IoT) has revolutionized data transfer in industries through the MQTT protocol. MQTT is a lightweight messaging protocol designed for efficient communication among IoT devices. It operates on a publish-subscribe model where data producers (publishers) send messages to specific topics. Interested devices (subscribers) subscribe to these topics through an MQTT broker, facilitating communication. MQTT offers Quality of Service (QoS) levels, ensuring reliable message delivery, making it ideal for IoT with intermittent connectivity. It is valued for low overhead, scalability, and real-time communication. Traditional MQTT brokers are single-node setups, straightforward for small to moderate IoT applications. In contrast, distributed MQTT brokers are interconnected, offering scalability, redundancy, load balancing, and fault tolerance. They suit large-scale IoT deployments where reliability and performance are vital. The proposed Load-Balancer Redis-based architecture for distributed MQTT brokers overcomes the shortcomings of traditional brokers. The Load-Balancer transfers all incoming TCP packets to the brokers for processing, which ensures equal utilization of each broker node. Redis acts as a synchronization layer for the brokers where the state information is stored.

Read the paper · More papers on PaperTik