Message Queue: Definition & Erklärung — Glossar
Was ist eine Message Queue?
Eine Message Queue (dt. Nachrichtenwarteschlange) ist ein asynchroner Kommunikationsmechanismus, bei dem Produzenten Nachrichten in eine Warteschlange schreiben und Konsumenten diese unabhängig davon lesen und verarbeiten. Sender und Empfänger müssen nicht gleichzeitig verfügbar sein — die Queue puffert die Nachrichten temporär.
Funktionsprinzip
Producer (Sender) schreibt eine Nachricht in die Queue und ist sofort fertig, ohne auf Verarbeitung zu warten. Consumer (Empfänger) liest und verarbeitet Nachrichten in eigenem Tempo. Nachrichten bleiben in der Queue, bis sie erfolgreich verarbeitet und bestätigt (acknowledged) wurden. Bei Fehler der Verarbeitung werden Nachrichten erneut zugestellt oder in eine Dead Letter Queue verschoben.
Verbreitete Message-Queue-Systeme
RabbitMQ ist eine ausgereifte Open-Source-Message-Broker-Lösung mit AMQP-Protokoll. Apache Kafka ist eine verteilte Streaming-Plattform für hochdurchsatzige Event-Streams (nicht nur Queue, sondern Persistent Log). AWS SQS (Simple Queue Service) ist der verwaltete Cloud-Dienst für Queue-basierte Entkopplung. Redis bietet leichtgewichtige Queue-Funktionalität über Listen und Streams. Azure Service Bus und Google Pub/Sub sind die Cloud-nativen Alternativen.
Unternehmensrelevanz
Message Queues sind unverzichtbar in Microservices-Architekturen und bei der Integration heterogener Systeme. Typische Einsatzfälle: E-Mail-Versand im Hintergrund (statt im Request-Pfad), Verarbeitung von Bestellungen ohne Blocking des Shop-Frontends, Datensynchronisation zwischen ERP und CRM, Verteilung von Aufgaben an einen Pool von Worker-Servern und Entkopplung von Spitzen-Traffic von Backend-Verarbeitungssystemen.