Zuverlässige DiensteReliable Services

Warteschlangen und zuverlässige Sitzungen sind die Windows Communication Foundation (WCF)-Funktionen, die zuverlässiges messaging implementieren.Queues and reliable sessions are the Windows Communication Foundation (WCF) features that implement reliable messaging. In diesem Thema wird erläutert, die Funktionen für zuverlässigen messaging von WCF.This topic explains the reliable messaging features of WCF.

Zuverlässiges messaging wird gezeigt, wie einer zuverlässigen messagingquelle (bezeichnet den Quelle) überträgt Nachrichten zuverlässig an ein zuverlässiges messagingziel (aufgerufen der Ziel).Reliable messaging is how a reliable messaging source (called the source) transfers messages reliably to a reliable messaging destination (called the destination).

Zuverlässiges Messaging führt die folgenden Funktionen aus:Reliable messaging performs the following functions:

  • Überträgt Zusicherungen für Nachrichten, die unabhängig von der Nachrichtenübertragung oder den Transportfehlern von einer Quelle an ein Ziel gesendet werden.Transfers assurances for messages sent from a source to a destination regardless of message transfer or transport failures.

  • Trennt die Quelle und das Ziel voneinander.Separates the source and the destination from each other. So ist eine unabhängige Wiederherstellung nach einem Fehler von Quelle und Ziel sowie eine zuverlässige Übertragung und Zustellung von Nachrichten möglich, auch wenn die Quelle oder das Ziel nicht verfügbar ist.This provides independent failure and recovery of the source and the destination, as well as reliable transfer and delivery of messages, even when the source or destination is unavailable.

Der Preis eines zuverlässigen Messagings besteht häufig in einer hohen Latenz.Reliable messaging frequently comes at the cost of high latency. Latenz ist die Zeit, die für die Nachricht bis zum Ziel aus der Quelldatenbank.Latency is the time it takes for the message to reach the destination from the source. WCF bietet daher die folgenden Typen von zuverlässigen messaging:WCF, therefore, provides the following types of reliable messaging:

  • Zuverlässige Sitzungen, welcher bietet eine zuverlässige Übertragung ohne die Kosten einer hohen Latenz.Reliable Sessions, which offers reliable transfer without the cost of high latency.

  • Warteschlangen in WCF, welcher bietet zuverlässige Übertragungen und Trennung zwischen der Quelle und Ziel.Queues in WCF, which offers both reliable transfers and separation between the source and the destination.

Zuverlässige SitzungenReliable Sessions

Zuverlässige Sitzungen bieten eine zuverlässige End-to-End-Übertragung von Nachrichten zwischen einer Quelle und einem Ziel. Dazu wird das zuverlässige WS-Messaging-Protokoll unabhängig von der Anzahl oder dem Typ der Vermittler verwendet, durch die die Messagingendpunkte (Quelle und Ziel) getrennt werden.Reliable sessions provide end-to-end reliable transfer of messages between a source and a destination using the WS-Reliable Messaging protocol, regardless of the number or type of intermediaries that separate the messaging (source and destination) endpoints. Dies umfasst alle Transportvermittler, die kein SOAP (z. B. HTTP-Proxys) verwenden, oder Vermittler, die SOAP (z. B. SOAP-basierte Router oder Brücken) verwenden, und die für die Übertragung von Nachrichten zwischen den Endpunkten erforderlich sind.This includes any transport intermediaries that do not use SOAP (for example, HTTP proxies) or intermediaries that use SOAP (for example, SOAP-based routers or bridges) that are required for messages to flow between the endpoints. Zuverlässige Sitzungen verwenden ein Übertragungsfenster im Arbeitsspeicher, um SOAP-Fehler auf Nachrichtenebene zu maskieren und Verbindungen im Falle von Transportfehlern neu herzustellen.Reliable sessions use an in-memory transfer window to mask SOAP message-level failures and re-establish connections in the case of transport failures.

Zuverlässige Sitzungen bieten zuverlässige Nachrichtenübertragungen mit niedriger Latenz.Reliable sessions provide low-latency reliable message transfers. Sie stellen SOAP-Nachrichten über Proxys oder Vermittler bereit, vergleichbar mit der TCP-Bereitstellung für Pakete über IP-Brücken.They provide for SOAP messages over any proxies or intermediaries, equivalent to what TCP provides for packets over IP bridges. Weitere Informationen über zuverlässige Sitzungen finden Sie unter zuverlässige Sitzungen.For more information about reliable sessions, see Reliable Sessions.

WarteschlangenQueues

Warteschlangen in WCF bieten zuverlässige Übertragungen von Nachrichten und eine Trennung zwischen Quellen und Zielen mit dem Nachteil hoher Latenz.Queues in WCF provide both reliable transfers of messages and separation between sources and destinations at the cost of high latency. WCF in der Warteschlange Kommunikation basiert auf Message Queuing (MSMQ).WCF queued communication is built on top of Message Queuing (MSMQ).

MSMQ steht als optionale Windows-Komponente zur Verfügung.MSMQ ships as an optional component with Windows. Der MSMQ-Dienst wird als Windows-Dienst ausgeführt.The MSMQ service runs as a Windows Service. Er erfasst Nachrichten, die in einer Übertragungswarteschlange der Quelle übertragen und einer Zielwarteschlange zugestellt werden.It captures messages for transmission in a transmission queue on behalf of the source and delivers it to a target queue. Die Zielwarteschlange akzeptiert Nachrichten im Auftrag des Ziels für eine spätere Zustellung, wenn das Ziel Nachrichten anfordert.The target queue accepts messages on behalf of the destination for later delivery whenever the destination requests messages. Die MSMQ-Manager implementieren ein zuverlässiges Nachrichtenübertragungsprotokoll, damit Nachrichten bei der Übertragung nicht verloren gehen.The MSMQ managers implement a reliable message-transfer protocol so that messages are not lost in transmission. Das Protokoll kann entweder systemeigen oder SOAP-basiert sein, zum Beispiel das SOAP Reliable Messaging Protocol (SRMP).The protocol can be native or a SOAP-based protocol called SOAP Reliable Messaging Protocol (SRMP).

Die Trennung, gekoppelt mit zuverlässigen Nachrichtenübertragungen zwischen Warteschlangen, ermöglicht Anwendungen, die lose miteinander verbunden sind, eine zuverlässige Kommunikation.The separation, coupled with reliable message transfers between queues, enables applications that are loosely coupled to communicate reliably. Im Gegensatz zu zuverlässigen Sitzungen müssen die Quelle und das Ziel nicht zum gleichen Zeitpunkt ausgeführt werden.Unlike reliable sessions, the source and destination do not have to be running at the same time. So werden implizit Szenarien möglich, bei denen Warteschlangen als Lastausgleichsmechanismus verwendet werden, wenn die Geschwindigkeit der Nachrichtenerzeugung und die Geschwindigkeit des Nachrichtenkonsums nicht übereinstimmen.This implicitly enables scenarios where queues are, in effect, used as a load-leveling mechanism when the source's rate of message production and the destination's rate of the message consumption do not match. Weitere Informationen zu Warteschlangen finden Sie unter Warteschlangen in WCF.For more information about queues, see Queues in WCF.

Siehe auchSee Also

Übersicht über zuverlässige SitzungenReliable Sessions Overview
Queuing in WCFQueuing in WCF