A Comparison of MQTT Brokers for Distributed IoT Edge Computing

Many enterprise IoT application scenarios, such as connected cars, smart cities, and cloud-connected industrial plants require distributed MQTT brokers to achieve high scalability and availability. With a market of over 20 MQTT brokers, it is hard for software architects to make a good selection. Existing MQTT comparisons often include only non-distributed brokers, focus exclusively on performance, or are difficult to generalize. We compared three distributed MQTT brokers for performance, scalability, resilience, security, extensibility, and usability in an enterprise IoT scenario deployed to an edge gateway cluster. We found that EMQX provided the best performance (28K msg/s), while only HiveMQ showed no message loss in our test scenario. VerneMQ offers similar features as the other brokers but is fully available as open source. The paper includes decision guidance for software architects, listing six major decision points regarding MQTT brokers.

[1]  Paul Greenfield,et al.  Behavior and performance of message-oriented middleware systems , 2002, Proceedings 22nd International Conference on Distributed Computing Systems Workshops.

[2]  Alois Knoll,et al.  OPC UA versus ROS, DDS, and MQTT: Performance Evaluation of Industry 4.0 Protocols , 2019, 2019 IEEE International Conference on Industrial Technology (ICIT).

[3]  Xiaoping Ma,et al.  Performance evaluation of MQTT and CoAP via a common middleware , 2014, 2014 IEEE Ninth International Conference on Intelligent Sensors, Sensor Networks and Information Processing (ISSNIP).

[4]  Gregor Hohpe,et al.  Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions , 2003 .

[5]  Gastón C Hillar,et al.  MQTT essentials : a lightweight IoT protocol : the preferred IoT publish-subscribe lightweight messaging protocol , 2017 .

[6]  Antônio Abelém,et al.  A Methodology for Classification and Evaluation of IoT Brokers , 2019, LANOMS.

[7]  Olaf Zimmermann,et al.  Architectural Decision Guidance Across Projects - Problem Space Modeling, Decision Backlog Management and Cloud Computing Knowledge , 2015, 2015 12th Working IEEE/IFIP Conference on Software Architecture.

[8]  Phelipe Feio,et al.  Classification and evaluation of IoT brokers: A methodology , 2020 .

[9]  Rainer Weinreich,et al.  Decision Guidance Models for Microservice Monitoring , 2017, 2017 IEEE International Conference on Software Architecture Workshops (ICSAW).

[10]  Biswajeeban Mishra,et al.  Performance Evaluation of MQTT Broker Servers , 2018, ICCSA.

[11]  Gianluca Reali,et al.  Comparison of two lightweight protocols for smartphone-based sensing , 2013, 2013 IEEE 20th Symposium on Communications and Vehicular Technology in the Benelux (SCVT).

[12]  H. D. Rombach,et al.  The Goal Question Metric Approach , 1994 .

[13]  Nitin Naik,et al.  Choice of effective messaging protocols for IoT systems: MQTT, CoAP, AMQP and HTTP , 2017, 2017 IEEE International Systems Engineering Symposium (ISSE).

[14]  Peh Chiong Teh,et al.  Container-based MQTT Broker Cluster for Edge Computing , 2019, 2019 4th International Conference and Workshops on Recent Advances and Innovations in Engineering (ICRAIE).

[15]  Samuel Kounev,et al.  Article in Press Performance Evaluation Performance Evaluation of Message-oriented Middleware Using the Specjms2007 Benchmark , 2022 .

[16]  Frank Leymann,et al.  Architectural Decisions and Patterns for Transactional Workflows in SOA , 2007, ICSOC.

[17]  Mohsen Guizani,et al.  Internet of Things: A Survey on Enabling Technologies, Protocols, and Applications , 2015, IEEE Communications Surveys & Tutorials.

[18]  M. Fischer,et al.  Message-oriented Middleware for Industrial Production Systems , 2018, 2018 IEEE 14th International Conference on Automation Science and Engineering (CASE).

[19]  Josu Bilbao,et al.  Towards a lightweight protocol for Industry 4.0: An implementation based benchmark , 2017, 2017 IEEE International Workshop of Electronics, Control, Measurement, Signals and their Application to Mechatronics (ECMSM).