Rozdíl mezi webovými službami a WCF

Webové služby vs WCF

Webové služby i WCF jsou webové technologie vyvinuté společností Microsoft. Webové služby byly zavedeny v dřívějších verzích .NET, zatímco WCF byl přidán do .NET framework v novějších verzích. Webové služby se používají k vytváření aplikací, které mohou odesílat / přijímat zprávy pomocí protokolu SOAP přes HTTP. WCF slouží k vytváření distribuovaných aplikací pro výměnu zpráv pomocí protokolu SOAP přes jakýkoli přenosový protokol.

Webové služby

Webová služba (někdy známá jako technologie ASMX v .NET) je metoda komunikace po síti. Podle W3C je webová služba systém určený pro podporu transakcí mezi stroji v síti. Je to webové rozhraní API popsané v jazyce WSDL (Web Service Description Language) a webové služby jsou obvykle samostatné a samy popisující. Webové služby lze zjistit pomocí protokolu UDDI (Universal Description, Discovery and Integration). Výměnou zpráv SOAP (Simple Object Access Protocol) obvykle přes HTTP (s XML) mohou ostatní systémy interagovat s webovými službami. Webové služby se používají mnoha způsoby, jako jsou RPC (Remote Procedure Call), SOA (Service Oriented Architecture) a REST (Representational State Transfer). Existují dvě automatizované metodiky návrhu pro vývoj webových služeb. Přístup zdola nahoru se zabývá nejprve vytvořením tříd a poté pomocí nástrojů pro generování WSDL k vytvoření těchto tříd jako webových služeb. Přístup shora dolů se zabývá definicí specifikací WSDL a poté pomocí nástrojů pro generování kódu pro vygenerování odpovídajících tříd. Webové služby mají dvě hlavní použití. Mohou být použity jako opakovaně použitelné komponenty aplikací a / nebo pro připojení webových aplikací běžících na různých platformách.

WCF

WCF (Windows Communication Foundation) je rozhraní .NET API (Application Programming Interface), které poskytuje jednotný programovací model pro vývoj připojených a servisně orientovaných aplikací. Konkrétněji se používá pro vývoj a nasazení distribuovaných aplikací se SOA. SOA se zabývá distribuovanou výpočetní technikou, ve které spotřebitelé spotřebovávají služby. Více zákazníků může konzumovat jednu službu a naopak. WCF podporuje pokročilé standardy webových služeb, jako je WS-Addressing, WS-ReliableMessaging, WS-Security a RSS syndication (k dispozici po .NET 4.0). Klient WCF používá koncový bod pro připojení ke službě WCF. Každá služba může mít více koncových bodů vystavujících svou smlouvu. Termín ABC se používá k označení adresy / vazby / smlouvy o službě WCF. Komunikace mezi klienty a službami probíhá prostřednictvím SOAP obálek.

Jaký je rozdíl mezi webovými službami a WCF?

Mezi webovými službami a službami WCF jsou některé klíčové rozdíly. Webové služby se používají k vytváření aplikací, které mohou odesílat a přijímat zprávy pomocí protokolu SOPA přes HTTP. WCF je však pro vytváření distribuovaných aplikací pro výměnu zpráv pomocí SOAP a jakéhokoli přenosového protokolu, jako je HTTP, TCP, pojmenované kanály a Microsoft Message Queuing (MSMQ) atd. Navíc lze WCF rozšířit na práci s jakýmkoli jiným přenosovým protokolem. Přestože jsou webové služby velmi jednoduché a snadno implementovatelné, WCF je architektonicky robustnější než webové služby. Webové služby mohou být hostovány pouze ve službě IIS a zabezpečení je omezené. WCF však může být hostitelem ve IIS, samo-hostitelských serverech s aplikacemi konzoly nebo službami Win NT nebo na jakémkoli jiném serveru. Kromě toho na rozdíl od webových služeb WCF podporuje binární .NET - .NET komunikace, distribuované transakce, specifikace WS- *, zasílání zpráv ve frontě a klidnou komunikaci.