MSMQ vs. SQL Server Service Broker

Ich habe eine Anwendung, die aus drei Teilen besteht:

ein Front-End-Webshop für Endbenutzer und Geschäftspartnerein Auftragsverwaltungssystem zur Abwicklung dieser Aufträgeein technisches Datenbanksystem, um alle technischen Details der bestellten Produkte und Dienstleistungen zu verwalten

eutzutage arbeiten diese Systeme (die sich auf separaten Servern befinden und von separaten Teams entwickelt werden) mithilfe von WCF-Webservices zusamme

Dieses Setup funktioniert einwandfrei - solange alle Server in Betrieb sind. Was sie nicht sind - jedenfalls nicht immer.

So habe ich angefangen, MSMQ oder SQL Server Service Broker zu verwenden, um die Kommunikation zwischen diesen Systemen zu verwalten - zumindest, wenn es um das Speichern einer Bestellung im Auftragsverwaltungssystem oder das Auftragsverwaltungssystem geht, das die technischen Daten sendet Daten an das Tech-Datenbanksystem.

Ich hoffe auf mehr Zuverlässigkeit im gesamten System - Benutzer können weiterhin Bestellungen aufgeben und diese gehen nicht verloren, auch wenn das Backend für die Auftragsverwaltung vorübergehend nicht verfügbar ist.

Aber die große Frage ist: MSMQ oder Service Broker? Alle drei Systeme basieren auf Windows und .NET und verwenden bereits SQL Server - auf drei separaten Servern.

Hat jemand solide, reale Fakten, die für (oder gegen) eine dieser beiden Technologien sprechen? Was sind Ihre realen Erfahrungen mit diesen beiden Technologien? Vor-und Nachteile. Wenn Sie von vorne anfangen könnten - welches würden Sie wählen? Oder würden Sie etwas anderes (was?) Ganz auswählen?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage