© Diyana Dimitrova/Shutterstock.com
Flexible Vernetzung mit dem HiveMQ MQTT Client

Effizient, robust und sicher


Eine Vielzahl von Anwendungen setzt mittlerweile auf das Kommunikationsprotokoll MQTT. Das Protokoll findet beispielsweise Einsatz in IoT-Anwendungen wie Industrie 4.0, Connected Cars und Logistik sowie generell bei der Kommunikation zwischen Microservices.

Mit dem Begriff „Internet der Dinge“ verbindet man oft nur eingebettete Geräte. Tatsächlich umfassen typische Anwendungen eine Vielfalt von Systemen, z. B. Steuergeräte, Gateways, mobile Geräte, Backend-Systeme und eine Vielzahl weiterer Microservices. Aufgrund der Diversität dieser Systeme erfordert ihre Vernetzung über das Internet eine robuste und plattformübergreifende Kommunikation. Hier kommt MQTT ins Spiel.

Bei MQTT handelt es sich um ein Publish/Subscribe-Protokoll, das sich sehr flexibel für die zuvor genannten Anwendungsfälle einsetzen lässt. Der HiveMQ MQTT Client ermöglicht die zuverlässige Vernetzung diverser Applikationen und Geräte über MQTT. Die Bibliothek lässt sich leicht in alle Java-Projekte integrieren und setzt ein besonderes Augenmerk auf Effizienz, sodass sie sich für den Einsatz im gesamten Spektrum von Embedded-Geräten bis hin zu Backend-Systemen eignet.

Sie ist über Maven Central verfügbar und kann somit als Dependency über Maven, Gradle oder ähnliche Build-Tools sehr leicht in Projekte eingebunden werden. Entwickelt wurde die unter Apache 2 lizenzierte Open-Source-Bibliothek von HiveMQ – den Entwicklern des gleichnamigen Enterprise MQTT Broker [1] – sowie von BMW Car IT. Die Weiterentwicklung ist sehr agil, jeder Interessierte kann sich über GitHub beteiligen und Feedback abgeben.

MQTT behandelt alle Applikationen und Geräte als MQTT-Clients, die über einen MQTT Broker bidirektional miteinander kommunizieren können. Clients können sowohl Nachrichten senden als auch empfangen. Das Senden wird als Publishen bezeichnet.

Nachrichten werden mit Topics gepublisht – Clients empfangen dann Nachrichten mit bestimmten Topics, indem sie sich zuvor mit Topic-Filtern beim Broker subscriben. MQTT bietet drei Quality-of-Service-(QoS-)Level, die unterschiedliche Nachrichtenzustellungsgarantien auch bei Verbindungsunterbrechungen gewährleisten: at most once, at least once und exactly once.

Für jede Nachricht kann je nach Anwendungsfall das passende QoS-Level gewählt werden.

Die HiveMQ-MQTT-Client-Bibliothek implementiert alle Features der neuesten MQTT-Version: MQTT 5. Die MQTT-5-Spezifikation wurde Ende 2017 erstmals veröffentlicht und schließlich Anfang 2019 als OASIS- und ISO-Standard be...

Neugierig geworden?

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang