This topic describes the architecture, scenarios, and benefits of Message Queue for MQTT. Traditional messaging middleware is generally used between microservices. Message Queue for MQTT, which is designed for Internet of Things (IoT) scenarios, transmits messages between devices and clouds and realizes the Internet of Everything in a real sense.

Access methods

In addition to Internet access, Message Queue for MQTT also supports access from virtual private clouds (VPCs). You have full control over your VPCs. For example, you can specify CIDR blocks and configure routing tables and gateways for them. In your VPCs, you can also deploy Alibaba Cloud resources, such as Elastic Compute Service (ECS), ApsaraDB RDS, and Server Load Balancer (SLB) instances.

System architecture

Message Queue for MQTT is a light-weight messaging middleware service provided by Alibaba Cloud for mobile Internet and IoT scenarios. Based on the features of message transmission in mobile Internet and IoT scenarios, it supports Message Queue for MQTT, WebSocket, and other mainstream communication protocols. In addition, Message Queue for MQTT supports transmission modes such as native persistent TCP connections, SSL encryption, and WebSocket at the data transmission layer. It supports mainstream programming languages and platforms including C, C++, Java, iOS, and Android. Figure 1 shows the system technology stack of Message Queue for MQTT.

Figure 1. System architecture
Technology stack

Scenarios

Message Queue for MQTT supports a range of protocols, languages, and platforms, and is widely used in mobile Internet and IoT fields. Its applications cover various scenarios, such as mobile live streaming, Internet of Vehicles, finance and payment, smart catering, and instant messaging.

Figure 2 shows the main scenarios of Message Queue for MQTT.

Figure 2. Scenarios
scenario

Benefits

Message Queue for MQTT provides connections for mobile devices, manage connections, and forwards data. It can persist backend data and store messages by working with other Alibaba Cloud Message Queue services such as Message Queue for Apache RocketMQ, which is a traditional messaging middleware service used for applications on servers. Also, it can serve as a connection gateway that has unlimited scalability. Message Queue for MQTT uses a distributed architecture to eliminate single-point bottlenecks and enable unlimited scale-out among components. This architecture ensures dynamic scaling based on your online usage, and instance specifications are completely transparent to you.

Figure 3 shows the benefits of Message Queue for MQTT.

Figure 3. Benefits
Benefits

Message Queue for MQTT has the following benefits over other mobile messaging services.

  • It supports standard protocols, such as MQTT and WebSocket. This means that additional technologies are not required for applications. You can use open source SDKs for most programming languages to seamlessly migrate your applications to Message Queue for MQTT.
  • As a persistent connection gateway used by a massive number of mobile devices, Message Queue for MQTT exchanges data with other Alibaba Cloud messaging services. This way, you can implement two-way communication between your device and the cloud without the need to set up your own gateway for your applications.
  • It supports device-level permission management and SSL/TLS encrypted communication to ensure higher security and reliability for data transmission.