Dela via


Köer och tillförlitliga sessioner

Köer och tillförlitliga sessioner är WCF-funktioner (Windows Communication Foundation) som implementerar tillförlitliga meddelanden. Ämnena i det här avsnittet beskriver WCF:s tillförlitliga meddelandefunktioner.

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 har följande viktiga aspekter:

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

  • Separation av källan och målet från varandra, vilket ger oberoende fel och återställning av källan och målet samt tillförlitlig överföring och leverans av meddelanden trots att 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 långa svarstider

  • 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-ReliableMessaging-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 (även kallat MSMQ).

MSMQ levereras som ett alternativ med Windows som körs som en NT-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-kö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 SOAP-baserat, till exempel 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 mekanism för belastningsutjämning när det finns ett matchningsfel mellan meddelandeproduktionens hastighet efter källan och hastigheten för meddelandets förbrukning av målet. Mer information om köer finns i Köer i WCF.

Se även