Unterschied zwischen Web Services und WCF

Anonim

Web Services vs WCF

Sowohl Web Services als auch WCF sind von Microsoft entwickelte Webtechnologien. Web Services wurden in früheren Versionen von. NET, während WCF hinzugefügt wurde. NET Framework in späteren Versionen. Webdienste werden zum Erstellen von Anwendungen verwendet, die Nachrichten mithilfe von SOAP über HTTP senden / empfangen können. WCF dient zum Erstellen von verteilten Anwendungen zum Austausch von Nachrichten über SOAP über ein beliebiges Transportprotokoll.

Ein Web-Service (auch als ASMX-Technologie in.NET bezeichnet) ist eine Kommunikationsmethode über das Netzwerk. Gemäß W3C ist ein Web-Service ein System, das für die Unterstützung von Machine-to-Machine-Transaktionen über ein Netzwerk ausgelegt ist. Es ist eine Web-API, die in WSDL (Web Service Description Language) beschrieben wird, und Webdienste sind normalerweise eigenständig und beschreiben sich selbst. Webdienste können mithilfe des UDDI-Protokolls (Universal Description, Discovery and Integration) ermittelt werden. Durch den Austausch von SOAP-Nachrichten (Simple Object Access Protocol) in der Regel über HTTP (mit XML) können andere Systeme mit Webdiensten interagieren. Webdienste werden auf verschiedene Arten verwendet, wie RPC (Remote Procedure Calls), SOA (Serviceorientierte Architektur) und REST (Representational State Transfer). Es gibt zwei automatisierte Entwurfsmethoden für die Entwicklung von Webdiensten. Beim Bottom-Up-Ansatz werden zunächst die Klassen erstellt und anschließend WSDL-Generierungstools verwendet, um diese Klassen als Webdienste zu erstellen. Der Top-Down-Ansatz befasst sich mit der Definition der WSDL-Spezifikationen und der Verwendung von Codegenerierungswerkzeugen, um die entsprechenden Klassen zu generieren. Webservices haben zwei Hauptverwendungen. Sie können als wiederverwendbare Anwendungskomponenten und / oder zum Verbinden von Webanwendungen verwendet werden, die auf verschiedenen Plattformen laufen.

WCF

WCF (Windows Communication Foundation) ist ein. NET API (Application Programming Interface), die ein einheitliches Programmiermodell für die Entwicklung von verbundenen und serviceorientierten Anwendungen bietet. Insbesondere wird es zur Entwicklung und Bereitstellung verteilter Anwendungen mit SOA verwendet. SOA beschäftigt sich mit verteilter Datenverarbeitung, bei der Verbraucher Dienste konsumieren. Mehrere Konsumenten können einen einzigen Service konsumieren und umgekehrt. WCF unterstützt fortschrittliche Webservice-Standards wie WS-Adressierung, WS-ReliableMessaging, WS-Security und RSS Syndication (verfügbar nach NET 4. 0). Ein WCF-Client verwendet einen Endpunkt, um eine Verbindung zu einem WCF-Dienst herzustellen. Jeder Dienst kann mehrere Endpunkte haben, die seinen Vertrag freigeben. Der Begriff ABC wird verwendet, um auf die Adresse / Bindung / Vertrag des WCF-Dienstes Bezug zu nehmen. Die Kommunikation zwischen Clients und Diensten erfolgt über SOAP-Umschläge.

Was ist der Unterschied zwischen Web Services und WCF?

Es gibt einige wichtige Unterschiede zwischen Webdiensten und WCF-Diensten.Webdienste werden zum Erstellen von Anwendungen verwendet, die Nachrichten über SOPA über HTTP senden / empfangen können. WCF dient jedoch dazu, verteilte Anwendungen zum Austausch von Nachrichten mithilfe von SOAP und beliebigen Transportprotokollen wie HTTP, TCP, Named Pipes und Microsoft Message Queuing (MSMQ) usw. zu erstellen. Außerdem kann WCF auf andere Transportprotokolle erweitert werden. Obwohl Webdienste sehr einfach und einfach zu implementieren sind, ist WCF architektonischer robuster als der Webdienst. Webdienste können nur in IIS gehostet werden und die Sicherheit ist begrenzt. Aber WCF kann in IIS gehostet werden, Self-Host-Server mit Konsolenanwendungen oder Win NT-Diensten oder einem anderen Server. Im Gegensatz zu Web-Services unterstützt WCF außerdem binär. NETZ -. NET-Kommunikation, verteilte Transaktionen, WS- * -Spezifikationen, Nachrichten in der Warteschlange und Ruhekommunikation.