Dela via


Reliable Services

Köer och tillförlitliga sessioner är WCF-funktioner (Windows Communication Foundation) som implementerar tillförlitliga meddelanden. I det här avsnittet beskrivs de tillförlitliga meddelandefunktionerna i WCF.

Tillförlitliga meddelanden är hur en tillförlitlig meddelandekälla (som kallas källan) överför meddelanden på ett tillförlitligt sätt till ett tillförlitligt meddelandemål (kallas målet).

Tillförlitliga meddelanden utför följande funktioner:

  • Överför garantier för meddelanden som skickas från en källa till ett mål oavsett meddelandeöverföring eller transportfel.

  • Separerar källan och målet från varandra. Detta ger oberoende fel och återställning av källan och målet, samt tillförlitlig överföring och leverans av meddelanden, även när källan eller målet inte är tillgängligt.

Tillförlitliga meddelanden sker ofta på bekostnad av långa svarstider. Svarstid är den tid det tar för meddelandet att nå målet från källan. WCF tillhandahåller därför följande typer av tillförlitliga meddelanden:

  • Reliable Sessions, som erbjuder tillförlitlig överföring utan kostnad för hög svarstid.

  • Köer i WCF, som erbjuder både tillförlitliga överföringar och separation mellan källan och målet.

Tillförlitliga sessioner

Tillförlitliga sessioner ger tillförlitlig överföring från slutpunkt till slutpunkt av meddelanden mellan en källa och ett mål med hjälp av WS-Reliable Messaging-protokollet, oavsett antalet eller typen av mellanhänder som separerar slutpunkterna för meddelanden (källa och mål). Detta omfattar alla transportförmedlare som inte använder SOAP (till exempel HTTP-proxyservrar) eller mellanhänder som använder SOAP (till exempel SOAP-baserade routrar eller bryggor) som krävs för att meddelanden ska flöda mellan slutpunkterna. Tillförlitliga sessioner använder ett minnesinternt överföringsfönster för att maskera fel på SOAP-meddelandenivå och återupprätta anslutningar vid transportfel.

Tillförlitliga sessioner ger tillförlitliga meddelandeöverföringar med låg svarstid. De tillhandahåller SOAP-meddelanden via proxyservrar eller mellanhänder, vilket motsvarar vad TCP tillhandahåller för paket via IP-bryggor. Mer information om tillförlitliga sessioner finns i Reliable Sessions (Tillförlitliga sessioner).

Köer

Köer i WCF ger både tillförlitliga överföringar av meddelanden och separation mellan källor och mål på bekostnad av hög svarstid. WCF-köad kommunikation bygger på Message Queuing (MSMQ).

MSMQ levereras som en valfri komponent med Windows. MSMQ-tjänsten körs som en Windows-tjänst. Den samlar in meddelanden för överföring i en överföringskö för källans räkning och levererar dem till en målkö. Målkön accepterar meddelanden för målets räkning för senare leverans när målet begär meddelanden. MSMQ-cheferna implementerar ett tillförlitligt protokoll för meddelandeöverföring så att meddelanden inte går förlorade i överföringen. Protokollet kan vara inbyggt eller ett SOAP-baserat protokoll med namnet SOAP Reliable Messaging Protocol (SRMP).

Separationen, tillsammans med tillförlitliga meddelandeöverföringar mellan köer, gör det möjligt för program som är löst kopplade att kommunicera tillförlitligt. Till skillnad från tillförlitliga sessioner behöver källan och målet inte köras samtidigt. Detta möjliggör implicit scenarier där köer i själva verket används som en belastningsutjämningsmekanism när källans frekvens för meddelandeproduktion och målets frekvens för meddelandeförbrukningen inte matchar. Mer information om köer finns i Köer i WCF.

Se även