Freigeben über


Warteschlangen und zuverlässige Sitzungen

Warteschlangen und zuverlässige Sitzungen sind die Windows Communication Foundation (WCF)-Features, die zuverlässige Nachrichten implementieren. Die in diesem Abschnitt enthaltenen Themen erläutern die zuverlässigen WCF-Messaging-Features.

Zuverlässiges Messaging ist, wie eine zuverlässige Messagingquelle (als Quelle bezeichnet) Nachrichten zuverlässig an ein zuverlässiges Messaging-Ziel (als Ziel bezeichnet) überträgt.

Zuverlässiges Messaging hat die folgenden wichtigen Aspekte:

  • Übertragungsüberprüfungen für Nachrichten, die von einer Quelle an ein Ziel gesendet werden, unabhängig von Nachrichtenübertragungsfehlern oder Transportfehlern.

  • Trennung der Quelle und des Ziels voneinander, was unabhängige Fehler und Wiederherstellung der Quelle und des Ziels sowie eine zuverlässige Übertragung und Übermittlung von Nachrichten ermöglicht, auch wenn die Quelle oder das Ziel nicht verfügbar ist.

Zuverlässiges Messaging kommt häufig zu Kosten einer hohen Latenz. Latenz ist die Zeit, die für die Nachricht benötigt wird, um das Ziel aus der Quelle zu erreichen. WCF stellt daher die folgenden Arten von zuverlässigen Nachrichten bereit:

Zuverlässige Sitzungen

Zuverlässige Sitzungen gewährleisten eine durchgängige zuverlässige Übertragung von Nachrichten zwischen einer Quelle und einem Ziel unter Verwendung des WS-ReliableMessaging Protokolls, unabhängig von der Anzahl oder Art der Zwischenvermittler, welche die Messaging-Endpunkte (Quelle und Ziel) voneinander trennen. Dies umfasst alle Transportintermediäre, die keine SOAP verwenden (z. B. HTTP-Proxys), sowie diejenigen, die SOAP verwenden (z. B. SOAP-basierte Router oder Brücken), die erforderlich sind, damit Nachrichten zwischen den Endpunkten fließen können. Zuverlässige Sitzungen verwenden ein Fenster für die In-Memory-Übertragung, um SOAP-Fehler auf Nachrichtenebene zu maskieren und Verbindungen im Falle von Transportfehlern erneut herzustellen.

Zuverlässige Sitzungen bieten zuverlässige Nachrichtenübertragungen mit geringer Latenz. Sie ermöglichen SOAP-Nachrichten über beliebige Proxys oder Vermittler, ähnlich wie TCP Pakete über IP-Brücken bereitstellt. Weitere Informationen zu zuverlässigen Sitzungen finden Sie unter "Zuverlässige Sitzungen".

Warteschlangen

Warteschlangen in WCF bieten sowohl zuverlässige Übertragungen von Nachrichten als auch Trennung zwischen Quellen und Zielen zu Kosten einer hohen Latenz. Die WCF-Warteschlangenkommunikation basiert auf Message Queuing (auch als MSMQ bezeichnet).

MSMQ wird als Option mit Windows ausgeliefert, die als NT-Dienst ausgeführt wird. Es erfasst Nachrichten für die Übertragung in einer Übertragungswarteschlange im Auftrag der Quelle und übermittelt sie an eine Zielwarteschlange. Die Zielwarteschlange nimmt Nachrichten im Auftrag des Ziels zur späteren Zustellung entgegen, wann immer das Ziel die Nachrichten anfordert. Die MSMQ-Warteschlangenmanager implementieren ein zuverlässiges Nachrichtenübertragungsprotokoll, sodass Nachrichten bei der Übertragung nicht verloren gehen. Das Protokoll kann systemeigene oder SOAP-basiertes Protokoll sein, z. B. Soap Reliable Messaging Protocol (SRMP).

Die Trennung, gepaart mit zuverlässigen Nachrichtenübertragungen zwischen Warteschlangen, ermöglicht Anwendungen, die lose gekoppelt sind, zuverlässig zu kommunizieren. Im Gegensatz zu zuverlässigen Sitzungen müssen die Quelle und das Ziel nicht zum gleichen Zeitpunkt ausgeführt werden. Dies ermöglicht implizit Szenarien, in denen Warteschlangen tatsächlich als Lastenausgleichsmechanismus verwendet werden, wenn zwischen der Nachrichtenproduktionsrate der Quelle und der Rate der Nachrichtennutzung durch das Ziel ein Konflikt besteht. Weitere Informationen zu Warteschlangen finden Sie unter "Warteschlangen" in WCF.

Siehe auch