Frage

Ich bin zu wollen Setup RabbitMQ als zwei (oder mehr) Knoten-Cluster mit HA.

Anwendungsfall: ein Client-Hersteller app (C # .NET) weiß, dass der Cluster zwei Knoten hat und veröffentlicht zu dem Cluster. Verschiedene Verbraucher Apps (auch C # .NET) mit dem Cluster verbinden und alle Nachrichten vom Hersteller erzeugt bekommen. Solange mindestens ein Knoten ist und läuft die Produzenten und Konsumenten werden alle an der Arbeit ohne Fehler fortgesetzt werden. Nimmt man den Knoten A und B laufen und B Matrizen für eine Weile, wird dann neu gestartet, dann eine Weile später A stirbt, werden die Kunden weiterhin alle Funktion, ohne einen Fehler zu empfangen hatten, da zu jedem Zeitpunkt mindestens ein Knoten liegt.

Kann es an der Arbeit wie diese aus der Box gemacht werden?

Gibt es andere MQs, die (kommerzielle ok) für eine Windows / .NET Anwendungsumgebung besser geeignet wären?

War es hilfreich?

Lösung

  

Kann es an der Arbeit wie diese aus der Box gemacht werden?

Nein. Wenn ein Knoten ausfällt, werden alle Verbindungen geschlossen. Da AMQP-Verbindungen Stateful sind, gibt es keinen Weg, um dieses. Was Sie erreichen können, ist 1) Makler geht, 2) alle Clients trennen, 3) Clients eine Verbindung zu anderen Knoten (als Original-Masquerading) und keine sind klüger.

Auf einer Seite zur Kenntnis, Kaninchen nicht unterstützen aktiv-aktiv HA-Clustering im Moment. Es unterstützt Aktiv-Passiv-Clustering und eine Form von logische Clustering (was könnte das sein, was Sie suchen).

Andere Tipps

RabbitMQ V2.6.0 jetzt Hochverfügbarkeits-Warteschlangen unter Verwendung aktiver / aktiven clustering unterstützt. Microsoft und eine Reihe von anderen Unternehmen haben gemeinsam an Apache Qpid die C # Bindungen hat und unterstützt auch aktiv / aktiv HA Clustering.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top