- Was ist ein Nachrichtenbroker?
- Nachrichtenbroker-Modelle
- Nachrichtenbroker in Cloudarchitekturen
- Nachrichtenbroker vs. APIs
- Nachrichtenbroker im Vergleich zu Ereignisstreaming-Plattformen
- Nachrichtenbroker vs. ESB (Enterprise Service Bus)
- Anwendungsfälle für Nachrichtenbroker
- Nachrichtenbroker und IBM Cloud

Nachrichtenbroker
Nachrichtenbroker
Nachrichtenbroker sind eine Kommunikationstechnologie zwischen Anwendungen, mit der ein gemeinsamer Integrationsmechanismus für die Unterstützung von cloudnativen, Microservices-basierten, serverlosen und hybriden Cloud-Architekturen erstellt werden kann.
Was ist ein Nachrichtenbroker?
Ein Nachrichtenbroker ist eine Software, die es Anwendungen, Systemen und Services ermöglicht, miteinander zu kommunizieren und Informationen auszutauschen. Der Nachrichtenbroker bewerkstelligt dies durch das Übersetzen von Nachrichten zwischen formalen Messaging-Protokollen. Dadurch können voneinander abhängige Dienste direkt miteinander "reden", auch wenn sie in verschiedenen Sprachen geschrieben oder auf unterschiedlichen Plattformen implementiert wurden.
Nachrichtenbroker sind Softwaremodule in Messaging-Middleware-Lösungen. Dieser Middleware-Typ stellt Entwicklern ein standardisiertes Mittel zur Verfügung, um den Datenfluss zwischen den Komponenten einer Anwendung zu verarbeiten, damit sie sich auf ihre Basislogik konzentrieren können. Sie kann als verteilte Kommunikationsschicht dienen, die es Anwendungen über mehrere Plattformen hinweg ermöglicht, intern zu kommunizieren.
Nachrichtenbroker können Nachrichten validieren, speichern, weiterleiten und an die entsprechenden Ziele übergeben. Sie dienen als Vermittler zwischen anderen Anwendungen und ermöglichen es Sendern, Nachrichten auszugeben, ohne zu wissen, wo die Empfänger sind, ob sie aktiv sind oder nicht, oder wie viele von ihnen es gibt. Dies erleichtert die Entkopplung von Prozessen und Services innerhalb von Systemen.
Um einen zuverlässigen Nachrichtenspeicher und eine garantierte Zustellung zu gewährleisten, setzen Nachrichtenbroker häufig auf eine Unterstruktur oder Komponente, die als Nachrichtenwarteschlange bezeichnet wird, die die Nachrichten speichert und ordnet, bis die konsumierenden Anwendungen sie verarbeiten können. In einer Nachrichtenwarteschlange werden Nachrichten in der genauen Reihenfolge gespeichert, in der sie übertragen wurden, und verbleiben in der Warteschlange, bis der Empfang bestätigt ist.
Asynchrones Messaging (15:11) bezieht sich auf die Art der Kommunikation zwischen Anwendungen, die Nachrichtenbroker möglich machen. Sie verhindert den Verlust wertvoller Daten und ermöglicht es, dass Systeme auch bei unterbrochener Konnektivität oder Latenzproblemen, die in öffentlichen Netzen üblich sind, weiter funktionieren. Asynchrones Messaging garantiert, dass Nachrichten einmal (und nur einmal) in der richtigen Reihenfolge relativ zu anderen Nachrichten zugestellt werden.
Nachrichtenbroker können Warteschlangenmanager zum Verarbeiten der Interaktionen zwischen mehreren Nachrichtenwarteschlangen sowie Services umfassen, die Datenweiterleitung, Nachrichtenübersetzung, Persistenz und Funktionen zur Clientstatusverwaltung bereitstellen.
Nachrichtenbroker-Modelle
Nachrichtenbroker bieten zwei grundlegende Nachrichtenverteilungsmuster oder Messaging-Stile an:
- Punkt-zu-Punkt-Messaging: Dies ist das Verteilungsmuster, das in Nachrichtenwarteschlangen mit einer Eins-zu-eins-Beziehung zwischen dem Absender und dem Empfänger der Nachricht verwendet wird. Jede Nachricht in der Warteschlange wird an nur einen Empfänger gesendet und nur einmal konsumiert. Punkt-zu-Punkt-Messaging wird aufgerufen, wenn auf eine Nachricht nur einmal reagiert werden muss. Beispiele für geeignete Anwendungsfälle für diesen Messaging-Stil sind die Verarbeitung von Lohnbuchhaltung und Finanztransaktionen. In diesen Systemen benötigen sowohl Absender als auch Empfänger eine Garantie, dass jede Zahlung einmal (und nur einmal) gesendet wird.
- Publish/Subscribe-Messaging: In diesem Nachrichtenverteilungsmuster, das häufig als "pub/sub" bezeichnet wird, veröffentlicht der Produzent jeder Nachricht dieses Muster zu einem Thema, und mehrere Nachrichtenkonsumenten subskribieren Themen, von denen sie Nachrichten empfangen möchten. Alle Nachrichten, die zu einem Thema veröffentlicht werden, werden an alle subskribierten Anwendungen verteilt. Hierbei handelt es sich um eine Verteilungsmethode im Broadcast-Stil, bei der eine Eins-zu-viele-Beziehung zwischen dem Publisher der Nachricht und ihren Konsumenten besteht. Wenn beispielsweise eine Fluggesellschaft Updates über die Landezeiten oder den Verspätungsstatus ihrer Flüge verbreiten würde, könnten mehrere Parteien die Informationen nutzen: Bodenbesatzungen, die Flugzeugwartung und -betankung durchführen, Gepäckabfertiger, Flugbegleiter und Piloten, die sich auf die nächste Reise des Flugzeugs vorbereiten, sowie die Betreiber von Sichtanzeigen, die die Öffentlichkeit informieren. Ein Publish/Subscribe-Messaging-Stil wäre für die Verwendung in diesem Szenario geeignet.
Nachrichtenbroker in Cloudarchitekturen
Cloudnative Anwendungen werden erstellt, um die inhärenten Vorteile von Cloud-Computing zu nutzen, einschließlich Flexibilität, Skalierbarkeit und schneller Implementierung. Diese Anwendungen bestehen aus kleinen, diskreten, wiederverwendbaren Komponenten mit dem Namen Mikroservices. Jeder Mikroservice wird implementiert und kann unabhängig von den anderen ausgeführt werden. Dies bedeutet, dass einer von ihnen ohne Auswirkungen auf andere Services im System aktualisiert, skaliert oder neu gestartet werden kann. Oft in Containern verpackt, arbeiten Microservices zusammen, um eine ganze Anwendung zu umfassen, obwohl jeder seinen eigenen Stapelspeicher hat, einschließlich einer Datenbank und eines Datenmodells, das sich von den anderen unterscheiden kann.
Microservices müssen über eine Möglichkeit verfügen, miteinander zu kommunizieren, um gemeinsam zu arbeiten. Nachrichtenbroker sind ein Mechanismus, mit dem sie dieses gemeinsame Kommunikations-Backbone schaffen.
Nachrichtenbroker werden häufig verwendet, um die Kommunikation zwischen lokalen Systemen und Cloudkomponenten in hybriden Cloud-Umgebungen zu verwalten. Durch die Verwendung eines Nachrichtenbrokers wird die Steuerung der Interservice-Kommunikation erhöht, wodurch sichergestellt wird, dass die Daten sicher, zuverlässig und effizient zwischen den Komponenten einer Anwendung gesendet werden. Nachrichtenbroker können eine ähnliche Rolle bei der Integration von Multicloud-Umgebungen spielen, so dass die Kommunikation zwischen Workloads und Laufzeiten auf unterschiedlichen Plattformen möglich ist. Sie eignen sich auch gut für die Verwendung im Serverless Computing, bei dem einzelne in der Cloud gehostete Services on demand ausgeführt werden.
Nachrichtenbroker vs. APIs
REST-APIs werden häufig für die Kommunikation zwischen Mikroservices verwendet. Der Begriff "Representational State Transfer" (REST) definiert eine Reihe von Prinzipien und Einschränkungen, die Entwickler bei der Erstellung von Web-Services beachten können. Alle Services, die sich daran halten, können über einen Satz einheitlicher, gemeinsam genutzter statusunabhängiger Operatoren und Anfragen kommunizieren. Die Anwendungsprogrammierschnittstelle (API) gibt den zugrunde liegenden Code an, der, wenn er den REST-Regeln entspricht, die Kommunikation der Services miteinander ermöglicht.
REST-APIs verwenden Hypertext Transfer Protocol (HTTP) für die Kommunikation. Da es sich bei HTTP um das Standardübertragungsprotokoll des öffentlichen Internets handelt, sind REST-APIs allgemein bekannt, häufig verwendet und weitgehend interoperabel. HTTP ist jedoch ein Anforderungs-/Antwortprotokoll, so dass es am besten in Situationen verwendet wird, die eine synchrone Anforderung/Antwort erfordern. Dies bedeutet, dass Services, die Anforderungen über REST-APIs stellen, so konzipiert sein müssen, dass sie eine sofortige Antwort erwarten. Wenn der Client, der die Antwort empfängt, inaktiv ist, wird der sendende Service blockiert, während er auf die Antwort wartet. Die Überbrückungs- und Fehlerbehandlungslogik sollte in beide Services integriert werden.
Nachrichtenbroker aktivieren die asynchrone Kommunikation zwischen Services, so dass der Sendeservice nicht auf die Antwort des empfangenden Service warten muss. Dies verbessert die Fehlertoleranz und Ausfallsicherheit in den Systemen, in denen sie eingesetzt werden. Darüber hinaus erleichtert die Verwendung von Nachrichtenbrokern die Skalierung von Systemen, da ein Publish/Subscribe-Messaging-Muster eine Änderung der Anzahl von Services ohne Weiteres unterstützen kann. Nachrichtenbroker behalten auch den Überblick über den Status der Konsumenten.
Nachrichtenbroker im Vergleich zu Ereignisstreaming-Plattformen
Während Nachrichtenbroker zwei oder mehr Messaging-Muster unterstützen können, einschließlich Nachrichtenwarteschlangen und Publish/Subscribe, bieten Ereignisstreaming-Plattformen nur Verteilungsmuster der Art Publish/Subscribe an. Konzipiert für die Verwendung mit hohen Nachrichtenvolumen, sind Ereignisstreaming-Plattformen leicht skalierbar. Sie sind in der Lage, Datensatzströme in Kategorien zu bestellen, die Themen genannt werden, und sie für eine bestimmte Zeit zu speichern. Im Gegensatz zu Nachrichtenbrokern können Ereignisstreaming-Plattformen jedoch keine Nachrichtenübermittlung garantieren oder verfolgen, welche Konsumenten Nachrichten empfangen haben.
Ereignisstreaming-Plattformen bieten mehr Skalierbarkeit als Nachrichtenbroker, aber weniger Funktionen, die die Fehlertoleranz (wie z. B. das erneute Senden von Nachrichten) sowie mehr Funktionen für das Nachrichtenrouting und die Warteschlangensteuerung sicherstellen.
Weitere Informationen zu ereignisgesteuerter Architektur.
Nachrichtenbroker vs. ESB (Enterprise Service Bus)
Ein Enterprise Service Bus (ESB) ist ein Architekturmuster, das manchmal in serviceorientierten Architekturen verwendet wird, die in Unternehmen implementiert sind. In einem ESB kombiniert eine zentrale Softwareplattform Kommunikationsprotokolle und Datenformate in eine "gemeinsame Sprache", die alle Services und Anwendungen in der Architektur gemeinsam nutzen können. Sie kann beispielsweise die von einem Protokoll (z. B. XML) empfangenen Anforderungen in ein anderes (z. B. JSON) übersetzen. ESBs transformieren ihre Nachrichtennutzdaten mithilfe eines automatisierten Prozesses. Die zentrale Softwareplattform verarbeitet auch andere Orchestrierungslogiken, wie z. B. Konnektivität, Routing und Anforderungsverarbeitung.
Die ESB-Infrastrukturen sind jedoch komplex und können eine Herausforderung für die Integration und in der Instandhaltung kostspielig sein. Die Fehlerbehebung ist schwierig, wenn Probleme in Produktionsumgebungen auftreten; sie sind nicht einfach zu skalieren, und die Aktualisierung ist langwierig.
Nachrichtenbroker sind eine "schlanke" Alternative zu ESBs, die eine ähnliche Funktionalität - einen Mechanismus für die Interservice-Kommunikation - auf einfachere Weise und zu geringeren Kosten bereitstellen. Sie eignen sich gut für die Verwendung in den Microservices-Architekturen, die weit verbreitet sind, da ESBs nicht mehr so beliebt sind.
Anwendungsfälle für Nachrichtenbroker
Die Implementierung von Nachrichtenbrokern kann eine Vielzahl von Geschäftsanforderungen in verschiedenen Branchen und in verschiedenen Unternehmensumgebungen erfüllen. Sie sind immer und überall dort nützlich, wo eine zuverlässige Kommunikation zwischen den Anwendungen und eine sichere Nachrichtenübermittlung erforderlich ist.
Nachrichtenbroker werden häufig auf folgende Arten verwendet:
- Finanztransaktionen und Zahlungsabwicklung: Es ist entscheidend, sicher zu sein, dass Zahlungen einmal (und nur einmal) gesendet werden. Die Verwendung eines Nachrichtenbrokers zur Verarbeitung dieser Transaktionsdaten bietet die Zusicherung, dass Zahlungsinformationen weder verloren gehen noch versehentlich dupliziert werden, ein Empfangsnachweis erbracht wird und Systeme auch dann zuverlässig kommunizieren können, wenn die intermediären Netze inaktiv sind.
- Auftragsbearbeitung und -erfüllung im E-Commerce: Wenn Sie im Online-Geschäft tätig sind, hängt der Ruf Ihrer Marke von der Zuverlässigkeit Ihrer Website und Ihrer E-Commerce-Plattform ab. Die Fähigkeit von Nachrichtenbrokern, die Fehlertoleranz zu erhöhen und zu garantieren, dass Nachrichten einmal (und nur einmal) konsumiert werden, macht sie zu einer natürlichen Wahl für die Verarbeitung von Online-Bestellungen.
- Schutz hochsensibler ruhender Daten und Daten bei der Übertragung: Wenn Ihre Branche stark reguliert ist oder Ihr Unternehmen mit erheblichen Sicherheitsrisiken konfrontiert ist, wählen Sie eine Messaging-Lösung mit End-to-End-Verschlüsselungsfunktionen.
Nachrichtenbroker und IBM Cloud
Nachrichtenbroker erlangen eine neue Bedeutung, da Unternehmen auf dem Weg in die Cloud ihre Anwendungen modernisieren. Viele der erfolgreichsten Unternehmen der Welt - darunter 85 % der Fortune 100 - vertrauen auf die Nachrichtenbroker-Funktionen von IBM, die für die Unterstützung der heutigen agilen Entwicklungsumgebungen, Microservices-basierten und hybriden Cloud-Infrastrukturen sowie einer breiten Palette von Systemtypen und Konnektivitätsanforderungen ausgelegt sind.
Machen Sie den nächsten Schritt: Informationen zu IBM Cloud Pak for Integration, das auf der Kernfunktionalität von IBM MQ, der führenden Enterprise-Messaging-Lösung, aufgebaut ist.
Beginnen Sie noch heute mit einem IBM Cloud-Konto.