Skillnad mellan webbtjänster och WCF

Anonim

Web Services vs WCF

Både Web Services och WCF är webbteknik som utvecklats av Microsoft. Web Services introducerades i tidigare versioner av. NET, medan WCF tillsattes till. NET Framework i senare versioner. Webtjänster används för att bygga program som kan skicka / ta emot meddelanden med hjälp av SOAP över HTTP. WCF är för att bygga distribuerade applikationer för att utbyta meddelanden med SOAP över alla transportprotokoll.

Web Services

En webbtjänst (ibland kallad ASMX-teknik i.NET) är en metod för kommunikation över nätverket. Enligt W3C är en webbtjänst ett system för att stödja maskin-till-maskin-transaktioner via ett nätverk. Det är ett webb API som beskrivs i WSDL (Web Service Description Language) och webbtjänster är vanligtvis självständiga och självbeskrivande. Webtjänster kan upptäckas med UDDI (Universal Description, Discovery and Integration) protokoll. Genom att byta SOAP (Simple Object Access Protocol) -meddelanden, typiskt över HTTP (med XML), kan andra system interagera med webbtjänster. Webtjänster används på flera sätt, såsom RPC (Remote Procedure Calls), SOA (Service Oriented Architecture) och REST (Representational State Transfer). Det finns två automatiserade designmetoder för att utveckla webbtjänster. Bottom-up-strategin handlar först om att skapa klasserna och sedan använda WSDL-generationsverktyg för att komponera dessa klasser som webbtjänster. Top-down-metoden handlar om att definiera WSDL-specifikationerna och sedan använda kodgenereringsverktyg för att generera motsvarande klasser. Webtjänster har två stora användningsområden. De kan användas som återanvändbara applikationskomponenter och / eller för att ansluta webbapplikationer som körs på olika plattformar.

WCF

WCF (Windows Communication Foundation) är en. NET API (Application Programming Interface), som tillhandahåller en enhetlig programmeringsmodell för utveckling av anslutna och serviceorienterade applikationer. Mer specifikt används den för att utveckla och distribuera distribuerade applikationer med SOA. SOA behandlar distribuerad databehandling där konsumenter konsumerar tjänster. Flera konsumenter kan konsumera en enda tjänst och vice versa. WCF stöder avancerade webbservicestandarder som WS-adressering, WS-ReliableMessaging, WS-Security och RSS-syndikering (tillgänglig efter. NET 4. 0). En WCF-klient använder en slutpunkt för att ansluta till en WCF-tjänst. Varje tjänst kan ha flera ändpunkter som avslöjar sitt kontrakt. Termen ABC används för att hänvisa till Adress / bindande / kontrakt för WCF-tjänsten. Kommunikationen mellan kunder och tjänster sker genom SOAP-kuvert.

Vad är skillnaden mellan webbtjänster och WCF?

Det finns några viktiga skillnader mellan webbtjänster och WCF-tjänster.Webtjänster används för att bygga program som kan skicka / ta emot meddelanden med hjälp av SOPA över HTTP. WCF är dock för att bygga distribuerade applikationer för att utbyta meddelanden med hjälp av SOAP och något transportprotokoll som HTTP, TCP, namngivna rör och Microsoft Message Queuing (MSMQ) etc. Vidare kan WCF utvidgas till att fungera med något annat transportprotokoll. Även om webbtjänster är mycket enkla och enkla att implementera, är WCF arkitektoniskt mer robust än webbtjänsten. Webtjänster kan endast vara värd i IIS och säkerheten är begränsad. Men WCF kan vara värd i IIS, servrar med konsol eller Win NT-tjänster eller någon annan server. Dessutom, till skillnad från webbtjänster, stödjer WCF binärt. NET -. NET-kommunikation, distribuerade transaktioner, WS- * -specifikationer, kömeddelanden och vilsam kommunikation.