Unterschied zwischen Webdiensten und WCF

Unterschied zwischen Webdiensten und WCF
Unterschied zwischen Webdiensten und WCF

Video: Unterschied zwischen Webdiensten und WCF

Video: Unterschied zwischen Webdiensten und WCF
Video: Pseudocode 2024, Juli
Anonim

Webdienste vs. WCF

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

Webdienste

Ein Webdienst (manchmal auch als ASMX-Technologie in. NET bekannt) ist eine Kommunikationsmethode über das Netzwerk. Laut W3C ist ein Webdienst ein System, das für die Unterstützung von Maschine-zu-Maschine-Transaktionen über ein Netzwerk bestimmt ist. Es ist eine in WSDL (Web Service Description Language) beschriebene Web-API, und Webdienste sind normalerweise in sich abgeschlossen und selbstbeschreibend. Webdienste können mithilfe des UDDI-Protokolls (Universal Description, Discovery and Integration) erkannt werden. Durch den Austausch von SOAP-Nachrichten (Simple Object Access Protocol) typischerweise über HTTP (mit XML) können andere Systeme mit Webdiensten interagieren. Webservices werden auf verschiedene Arten verwendet, wie RPC (Remote Procedure Calls), SOA (Service Oriented Architecture) und REST (Representational State Transfer). Es gibt zwei automatisierte Entwurfsmethoden für die Entwicklung von Webdiensten. Beim Bottom-up-Ansatz werden zuerst die Klassen erstellt und dann WSDL-Generierungstools verwendet, um diese Klassen als Webdienste zusammenzustellen. Beim Top-down-Ansatz geht es darum, die WSDL-Spezifikationen zu definieren und dann mithilfe von Codegenerierungstools die entsprechenden Klassen zu generieren. Webdienste haben zwei Hauptverwendungen. Sie können als wiederverwendbare Anwendungskomponenten und/oder zur Verbindung von Webanwendungen verwendet werden, die auf verschiedenen Plattformen laufen.

WCF

WCF (Windows Communication Foundation) ist eine. NET-API (Application Programming Interface), die ein einheitliches Programmiermodell für die Entwicklung verbundener und serviceorientierter Anwendungen bietet. Genauer gesagt wird es für die Entwicklung und Bereitstellung verteilter Anwendungen mit SOA verwendet. SOA befasst sich mit verteiltem Computing, bei dem Verbraucher Dienste konsumieren. Mehrere Verbraucher können einen einzelnen Dienst nutzen und umgekehrt. WCF unterstützt erweiterte Webdienststandards wie WS-Addressing, WS-ReliableMessaging, WS-Security und RSS-Syndication (verfügbar nach. NET 4.0). Ein WCF-Client verwendet einen Endpunkt, um eine Verbindung mit einem WCF-Dienst herzustellen. Jeder Dienst kann mehrere Endpunkte haben, die seinen Vertrag offenlegen. Der Begriff ABC wird verwendet, um sich auf die Adresse/Bindung/den Vertrag des WCF-Dienstes zu beziehen. Die Kommunikation zwischen Clients und Diensten erfolgt über SOAP-Umschläge.

Was ist der Unterschied zwischen Webdiensten und WCF?

Es gibt einige wesentliche Unterschiede zwischen Webdiensten und WCF-Diensten. Webdienste werden verwendet, um Anwendungen zu erstellen, die Nachrichten mit SOPA über HTTP senden/empfangen können. WCF dient jedoch zum Erstellen verteilter Anwendungen zum Austauschen von Nachrichten mit SOAP und beliebigen Transportprotokollen wie HTTP, TCP, Named Pipes und Microsoft Message Queuing (MSMQ) usw. Darüber hinaus kann WCF so erweitert werden, dass es mit jedem anderen Transportprotokoll funktioniert. Obwohl Webdienste sehr einfach und leicht zu implementieren sind, ist WCF architektonisch robuster als Webdienste. Webdienste können nur in IIS gehostet werden und die Sicherheit ist begrenzt. Aber WCF kann in IIS, selbst gehosteten Servern mit Konsolenanwendungen oder Win NT-Diensten oder jedem anderen Server gehostet werden. Darüber hinaus unterstützt WCF im Gegensatz zu Webdiensten binäre. NET –. NET-Kommunikationen, verteilte Transaktionen, WS--Spezifikationen, Warteschlangen-Messaging und Restful-Kommunikation.

Empfohlen: