Reliable Services
Wachtrijen en betrouwbare sessies zijn de WCF-functies (Windows Communication Foundation) waarmee betrouwbare berichten worden geïmplementeerd. In dit onderwerp worden de betrouwbare berichtfuncties van WCF uitgelegd.
Reliable Messaging is hoe een betrouwbare berichtenbron (de bron genoemd) berichten betrouwbaar overdraagt naar een betrouwbare berichtbestemming (de bestemming genoemd).
Betrouwbare berichten voeren de volgende functies uit:
Draagt garanties over voor berichten die van een bron naar een bestemming worden verzonden, ongeacht berichtoverdracht of transportfouten.
Scheidt de bron en het doel van elkaar. Dit biedt onafhankelijke fouten en herstel van de bron en de bestemming, evenals betrouwbare overdracht en bezorging van berichten, zelfs wanneer de bron of bestemming niet beschikbaar is.
Betrouwbare berichten komen vaak ten koste van hoge latentie. Latentie is de tijd die het duurt voordat het bericht de bestemming van de bron bereikt. WCF biedt daarom de volgende typen betrouwbare berichten:
Betrouwbare sessies, die betrouwbare overdracht bieden zonder de kosten van hoge latentie.
Wachtrijen in WCF, die zowel betrouwbare overdrachten als scheiding tussen de bron en de bestemming bieden.
Betrouwbare sessies
Betrouwbare sessies bieden end-to-end betrouwbare overdracht van berichten tussen een bron en een bestemming met behulp van het WS-Reliable Messaging-protocol, ongeacht het aantal of het type tussenpersonen dat de berichteneindpunten (bron- en doeleindpunten) scheidt. Dit omvat alle transporttussenpersonen die geen SOAP gebruiken (bijvoorbeeld HTTP-proxy's) of tussenpersonen die SOAP gebruiken (bijvoorbeeld SOAP-routers of bruggen) die nodig zijn om berichten tussen de eindpunten te laten stromen. Betrouwbare sessies gebruiken een in-memory overdrachtsvenster om SOAP-berichtniveaufouten te maskeren en verbindingen opnieuw tot stand te brengen in het geval van transportfouten.
Betrouwbare sessies bieden betrouwbare berichtoverdrachten met lage latentie. Ze bieden SOAP-berichten via proxy's of tussenpersonen, gelijk aan wat TCP biedt voor pakketten via IP-bruggen. Zie Reliable Sessions voor meer informatie over betrouwbare sessies.
Wachtrijen
Wachtrijen in WCF bieden zowel betrouwbare overdrachten van berichten als scheiding tussen bronnen en bestemmingen tegen hoge latentie. WCF-communicatie in de wachtrij is gebouwd boven op Message Queuing (MSMQ).
MSMQ wordt geleverd als een optioneel onderdeel met Windows. De MSMQ-service wordt uitgevoerd als een Windows-service. Het legt berichten vast voor verzending in een transmissiewachtrij namens de bron en levert deze aan een doelwachtrij. De doelwachtrij accepteert berichten namens de bestemming voor latere bezorging wanneer de bestemming berichten aanvraagt. De MSMQ-managers implementeren een betrouwbaar protocol voor berichtoverdracht, zodat berichten niet verloren gaan bij verzending. Het protocol kan systeemeigen zijn of een SOAP-protocol met de naam SOAP Reliable Messaging Protocol (SRMP).
Dankzij de scheiding, in combinatie met betrouwbare berichtoverdrachten tussen wachtrijen, kunnen toepassingen die losjes zijn gekoppeld, betrouwbaar communiceren. In tegenstelling tot betrouwbare sessies hoeven de bron en het doel niet tegelijkertijd te worden uitgevoerd. Dit maakt scenario's mogelijk waarbij wachtrijen in feite worden gebruikt als een mechanisme voor het herverdelingsniveau van de bron wanneer de bronsnelheid van de berichtproductie en de doelsnelheid van het berichtverbruik niet overeenkomen. Zie Wachtrijen in WCF voor meer informatie over wachtrijen.