Konfiguration für gleichmäßige Auslastung oder Skalierbarkeit

Diese Konfiguration umfasst mehrere Messaging-Engines, die in einem Cluster ausgeführt werden und jeweils auf einen bestimmten Server beschränkt sind. Mit einer Konfiguration mit Lastausgleich kann ein höherer Nachrichtendurchsatz erzielt werden, weil die Nachrichtenlast auf mehrere Server verteilt wird.

Sie haben zwei Optionen:

Diese Art der Bereitstellung ermöglicht eine Lastverteilung durch die Aufteilung der Ziele auf mehrere Messaging-Engines. Diese Konfiguration aktiviert kein Failover, weil jede Messaging-Engine nur auf einem einzigen Server ausgeführt werden kann. Die Auswirkungen eines Fehlers sind geringer als bei einer einfachen Implementierung, weil beim Ausfall eines Servers oder einer Messaging-Engine im Cluster die verbleibenden Messaging-Engines noch betriebsbereite Zielpartitionen besitzen. Die von einer Messaging-Engine in einem ausgefallenen Server bearbeiteten Nachrichten sind jedoch so lange nicht verfügbar, bis der Server erneut gestartet werden kann.

Die Konfiguration für Lastausgleich unterstützt auch die Skalierbarkeit, da es möglich ist, dem Cluster neue Server hinzuzufügen, ohne vorhandene Messaging-Engines im Cluster zu beeinträchtigen.

Die folgende Abbildung zeigt eine Konfiguration für Lastausgleich und Skalierbarkeit, in der es drei Messaging-Engines, ME1, ME2 und ME3, mit den Datenspeichern A, B und C gibt. Die Messaging-Engines werden in einem Cluster mit drei Servern ausgeführt und teilen sich den Datenverkehr, der über das Ziel fließt. Jeder Server befindet sich auf einem separaten Knoten. Wenn einer der Knoten ausfällt, sind somit die Server auf den verbleibenden Knoten weiterhin verfügbar.

Abb. 1. Konfiguration für Lastausgleich oder Skalierbarkeit
Das Diagramm wird im umgebenden Text beschrieben.

Die folgende Abbildung zeigt, was bei einem Ausfall von "server1" geschieht. Die Messaging-Engine "ME1" kann nicht ausgeführt werden, und der Datenspeicher "A" ist nicht zugänglich. Die Messaging-Engine "ME1" kann erst wieder Nachrichten verarbeiten, wenn der Server "server1" wiederhergestellt ist. Die Messaging-Engines "ME2" und "ME3" sind davon nicht betroffen und verarbeiten weiterhin Nachrichten. Sie verarbeiten jetzt den gesamten neuen Datenverkehr, der über das Ziel fließt.

Abbildung 2: Konfiguration für Lastausgleich oder Skalierbarkeit nach Ausfall von "server1"
Das Diagramm wird im umgebenden Text beschrieben.

Die folgende Abbildung zeigt, was geschieht, wenn der Server "server1" wiederhergestellt ist und der Server "server2" ausfällt. Die Messaging-Engine "ME2" kann nicht ausgeführt werden, und der Datenspeicher "B" ist nicht zugänglich. Die Messaging-Engine "ME2" kann erst wieder Nachrichten verarbeiten, wenn der Server "server2" wiederhergestellt ist. Die Messaging-Engines "ME1" und "ME3" können Nachrichten verarbeiten und verarbeiten jetzt den gesamten neuen Datenverkehr, der über das Ziel fließt.

Abb. 3 Konfiguration für Lastausgleich oder Skalierbarkeit nach Wiederherstellung von "server1" und Ausfall von "sever2"
Das Diagramm wird im umgebenden Text beschrieben.