Zum Inhalt springen
FindOpenSource

RabbitMQ

Ausgereifter, weit verbreiteter Message-Broker zum Entkoppeln von Diensten mit zuverlässigen Warteschlangen, Routing und Pub/Sub-Messaging über AMQP, MQTT und STOMP.

Überblick

RabbitMQ ist ein universeller Message-Broker, der es Anwendungen ermöglicht, asynchron zu kommunizieren, indem sie Nachrichten an Queues und Exchanges statt direkt aneinander senden. Er implementiert mehrere Messaging-Protokolle – AMQP 0-9-1, AMQP 1.0, MQTT und STOMP –, sodass Producer und Consumer, die in unterschiedlichen Sprachen und Frameworks geschrieben sind, über denselben Broker Nachrichten austauschen können.

Sein Routing-Modell aus Exchanges und Bindings unterstützt gängige Messaging-Muster von Haus aus: einfache Work-Queues zum Verteilen von Hintergrundaufgaben auf mehrere Worker, Publish/Subscribe-Fan-out an mehrere Consumer sowie themenbasiertes Routing für selektivere Zustellung. RabbitMQ lässt sich für Hochverfügbarkeit clustern, und die Management-Oberfläche sowie CLI-Tools machen Queue-Tiefe, Consumer-Anzahl und Nachrichtenfluss im Produktivbetrieb leicht einsehbar.

RabbitMQ eignet sich für Teams, die eine klassische, bewährte Task-Queue oder einen Message-Broker benötigen, um Dienste zu entkoppeln und Last abzufedern – etwa indem langsame Arbeit an Hintergrund-Consumer ausgelagert wird –, statt eines verteilten Logs für hochdurchsatzfähiges Event-Streaming mit Replay, wofür eher Apache Kafka (ebenfalls in diesem Katalog) konzipiert ist.

Kategorien
Backend
Schlagwörter
message-queuemessage-brokerpubsubamqptask-queue
Sprachen
Erlang
Lizenz
MPL-2.0

Einen Fehler entdeckt? Änderung auf GitHub vorschlagen.