Baidu officially open-sources BifroMQ: high-performance multi-tenant MQTT message middleware

Baidu Tiangong AIoT Internet of Things platform ranks the leader in the "IDC MarketScape China Internet of Things Cloud Platform Vendor Evaluation, 2022". Its key capability IoT core suite has widely served thousands of enterprises and a large number of developers in the past few years. Whether it is in smart home, Internet of Vehicles, industry or smart city, hundreds of millions of devices realize the Internet of Things through the Internet of Things core suite, and massive, high-frequency, and large-capacity message throughput occurs all the time.

The reason why Tiangong AIoT platform can serve such a huge equipment and business scale stably for a long time is largely due to its underlying MQTT message middleware. The independent and horizontally scalable design of this message middleware enables it to efficiently handle the key load of MQTT, including connection load and message load. After years of technology accumulation and precipitation by the Baidu Smart Cloud IoT team, this middleware has fully supported MQTT 3.1/3.1.1, including the use of MQTT through TCP, TLS, WS, WSS, etc., and integrated multi-tenant support .

Today, in order to accelerate the innovation and excellent development of the Internet of Things industry, Baidu officially announced the open source of this high-performance distributed MQTT message middleware, and named it BifroMQ.

BifroMQ name meaning

The name of BifroMQ is inspired by Bifröst in Norse mythology—a rainbow bridge that connects Midgard, the human world, and Asgard, the world where gods live. It is a solid and flexible channel between the two worlds. BifroMQ is also designed to be a hub connecting various systems or applications, enabling communication between them through message passing. This is very similar to the role that MQTT middleware plays in a distributed system, namely processing and forwarding messages.

In addition, BifroMQ's excellent performance in terms of stability and reliability, as well as its advantages in scalability and adaptability, have a lot in common with Bifröst's robustness and flexibility. Therefore, we named the MQTT middleware "BifroMQ", implying that it is strong and flexible as a bridge connecting different systems or applications.

BifroMQ technical architecture and performance

BifroMQ is an open source implementation of MQTT Broker based on the concept of Serverless. Its design concept is "shared resources, exclusive experience", focusing on solving MQTT workload isolation and supply-demand balance in a multi-tenant environment. It uses a load-independent sub-cluster design to efficiently handle workloads such as connection sessions, message forwarding, and message storage. Each sub-cluster has high availability, supports horizontal expansion, and can flexibly cope with multi-tenant scenarios. In order to overcome the problem that the size of the routing table may exceed the memory of a single machine, we adopt an innovative design to make the routing table storage expandable to multiple machines. At the same time, BifroMQ has a built-in optimized distributed storage engine, which ensures stable performance without relying on third-party storage middleware.

In addition, BifroMQ supports three deployment modes: Standalone, Standard Cluster, and Independent Workload Cluster, and allows customization through plug-ins to meet different business needs.

In terms of performance, BifroMQ has undergone rigorous testing, showing powerful processing capabilities and low latency. In a standard test environment, when dealing with a large number of concurrent message publishing, BifroMQ maintains extremely low message latency and low CPU usage. At the same time, compared with similar open source MQTT message middleware, BifroMQ performs well in terms of latency and performance stability.

BifroMQ Applicable Scenarios

BifroMQ can be widely used in various IoT scenarios, including but not limited to smart home, industrial Internet of Things, Internet of Vehicles, and smart cities. It can provide reliable and high-performance message transmission services for these applications, supporting large-scale device connection and message processing. For example, in the field of smart home, through BifroMQ, tens of millions of home devices can be connected, and functions such as remote control, status synchronization and data reporting can be realized; in the field of industrial Internet of Things, it can support a large number of sensors and devices for real-time data collection and processing; for the Internet of Vehicles, BifroMQ can handle communication between vehicles and between vehicles and infrastructure; in smart city applications, it can assist in the management and optimization of city resources, such as traffic, energy, and security.

future outlook

As one of Baidu's key open source projects, we will invest more resources to support the development of BifroMQ to meet more business needs. In the future, BifroMQ will continue to improve its support for MQTT 5, strengthen performance optimization, enrich functions, and continue to expand its application in the field of Internet of Things. At the same time, we will continue to uphold the concept of technology neutrality and further strengthen BifroMQ's "integrated" capabilities, making it easier to work with various systems and applications. In addition, BifroMQ will cooperate with more open source projects and standardization organizations in the future to jointly promote the development of IoT technology and contribute to the upgrade and iteration of the global IoT industry.

Finally, as an open source project, BifroMQ welcomes developers and enterprises to participate in project development and improvement.

To this end, we provide developers with rich documentation, tutorials, Q&A and codes on the BifroMQ official website ( https://bifromq.io/ ) and the GitHub community platform ( https://github.com/baidu/bifromq ) Contribute and other resources.

At the same time, you can also join the developer exchange community by scanning the QR code below, and communicate and learn with your peers.

Guess you like

Origin www.oschina.net/news/249413