Neuigkeiten von trion.
Immer gut informiert.

MQTT-Broker im Vergleich

Die Covid Pandemie hat zumindest einen (vermutlich) positiven Nebeneffekt: Die Digitialisierung, die vierte industrielle Revolution, IoT & Co oder wie man das Ganze auch nennen mag erlebt einen Boom. Eines der wesentlichen Protokolle für IoT / Maschinenkommunikation ist MQTT. Um Aktoren/Sensoren/Steuerungssysteme miteinander nach dem Publish-Subscribe Muster plaudern zu lassen bedarf es dabei eines Brokers.

Platzhirsch ist hierbei nach wie vor Eclipse Mosquitto, das mittlerweile auch die Protokoll-Version 5 beherrscht und damit auch für anspruchsvollere Use-Cases geeignet ist.

Wie heißt es so schön wie richtig auf der Hauptseite? Mosquitto is highly portable and available for a wide range of platforms . Das kann der bescheidene Autor dieser Zeilen vollauf bestätigen. Der Broker arbeitet effizient und zuverlässig. Sogar auf des Autors recht schwachbrüstiger FRITZ!Box 7362 SL tut er als Teil der Hausautomatisierung fleißig seinen Dienst. Ein Dashboard für das Monitoring gefällig? Auch kein (großes) Problem: Prometheus Exporter (z.B. mosquitto-exporter) bzw. ein eigener Exporter mit maßgeschneiderten Metriken + Prometheus + Grafana + Dashboard. Das Ganze am besten kredenzt durch Freund Docker. Und alle sind zufrieden.

Daneben ein alternatives, kommerzielles Produkt im Markt erfolgreich zu positionieren ist sicherlich nicht ganz einfach. Hier ist definitiv HiveMQ zu nennen. Es punktet mit seiner Cluster-Fähigkeit / Hochverfügbarkeit / Skalierbarkeit (insbesondere auf Kubernetes und dem Kubernetes-Aufsatz OpenShift) und mit seinen Enterprise-Features. Die Enterprise-Edition kommt dann auch mit einem obligatorischen Control Center daher.

In unseren Kafka Schulungen gehen wir auch auf das Thema Kafka und IoT ein: Die Anbindung von Zehntausenden oder gar Millionen von IoT Clients an Kafka ist dabei eine - sagen wir einmal - "Herausforderung". Bei dem Einsatz von Kafka Connect für MQTT ergeben sich schnell Leistungs- und Skalierungsprobleme; die alternative Verwendung eines MQTT-Proxys zwischen Clients und Kafka führt zu einer meist unerwünscht engen Kopplung. Genau in diese Lücke stößt die HiveMQ Enterprise Extension für Kafka. Dieser ergänzt den MQTT-Broker um eine native Implementierung des Kafka-Protokolls.

HiveMQ steht übrigens auch in einer Community Edition zur Verfügung. Es scheint aber, dass die Community Code-Kontributionen noch recht überschaubar sind. Aber das mag sich noch ändern.

Der Vollständigkeit sei erwähnt, dass es neben den genannten Brokern selbstverständlich eine Vielzahl von Alternativen gibt.

Welcher MQTT Broker in einem konkreten Projekt zum Einsatz kommen soll, das harrt - wie fast immer in der IT - natürlich einer Analyse des jeweiligen Kontexts sowie der fachlichen und technischen Anforderungen.

Eine Übersicht über gängige Broker finden Sie bei uns hier: Vergleichsmatrix MQTT Broker.




Zu den Themen MQTT, Java, Kafka, Kubernetes, Docker und Prometheus/Grafana bieten wir sowohl Beratung, Entwicklungsunterstützung als auch passende Schulungen an:

Auch für Ihren individuellen Bedarf können wir Workshops und Schulungen anbieten. Sprechen Sie uns gerne an.

Feedback oder Fragen zu einem Artikel - per Twitter @triondevelop oder E-Mail freuen wir uns auf eine Kontaktaufnahme!

Zur Desktop Version des Artikels