Servicios web frente a WCF
Tanto los servicios web como WCF son tecnologías web desarrolladas por Microsoft. Los servicios web se introdujeron en versiones anteriores de. NET, mientras que WCF se agregó a. NET Framework en versiones posteriores. Los servicios web se utilizan para crear aplicaciones que pueden enviar/recibir mensajes mediante SOAP sobre HTTP. WCF es para construir aplicaciones distribuidas para intercambiar mensajes usando SOAP sobre cualquier protocolo de transporte.
Servicios web
Un servicio web (a veces conocido como tecnología ASMX en. NET) es un método de comunicación a través de la red. Según el W3C, un servicio web es un sistema dedicado a soportar transacciones de máquina a máquina a través de una red. Es una API web descrita en WSDL (lenguaje de descripción de servicios web) y los servicios web suelen ser autónomos y autodescriptivos. Los servicios web se pueden descubrir utilizando el protocolo UDDI (Universal Description, Discovery and Integration). Al intercambiar mensajes SOAP (Protocolo simple de acceso a objetos) normalmente a través de HTTP (con XML), otros sistemas pueden interactuar con los servicios web. Los servicios web se utilizan de varias maneras, como RPC (llamadas a procedimientos remotos), SOA (arquitectura orientada a servicios) y REST (transferencia de estado representacional). Hay dos metodologías de diseño automatizado para desarrollar servicios Web. El enfoque de abajo hacia arriba trata de crear primero las clases y luego usar herramientas de generación de WSDL para componer estas clases como servicios web. El enfoque de arriba hacia abajo trata de definir las especificaciones WSDL y luego usar herramientas de generación de código para generar las clases correspondientes. Los servicios web tienen dos usos principales. Se pueden usar como componentes de aplicaciones reutilizables y/o para conectar aplicaciones web que se ejecutan en diferentes plataformas.
WCF
WCF (Windows Communication Foundation) es una API. NET (interfaz de programación de aplicaciones), que proporciona un modelo de programación unificado para desarrollar aplicaciones conectadas y orientadas a servicios. Más específicamente, se utiliza para desarrollar y desplegar aplicaciones distribuidas con SOA. SOA se ocupa de la informática distribuida en la que los consumidores consumen servicios. Múltiples consumidores pueden consumir un solo servicio y viceversa. WCF admite estándares de servicios web avanzados como WS-Addressing, WS-ReliableMessaging, WS-Security y sindicación RSS (disponible después de. NET 4.0). Un cliente WCF usa un punto final para conectarse a un servicio WCF. Cada servicio puede tener múltiples puntos finales que expongan su contrato. El término ABC se utiliza para referirse a la dirección/enlace/contrato del servicio WCF. La comunicación entre clientes y servicios se realiza a través de sobres SOAP.
¿Cuál es la diferencia entre los servicios web y WCF?
Existen algunas diferencias clave entre los servicios web y los servicios WCF. Los servicios web se utilizan para crear aplicaciones que pueden enviar/recibir mensajes mediante SOPA sobre HTTP. Sin embargo, WCF es para crear aplicaciones distribuidas para intercambiar mensajes mediante SOAP y cualquier protocolo de transporte como HTTP, TCP, canalizaciones con nombre y Microsoft Message Queuing (MSMQ), etc. Además, WCF se puede ampliar para trabajar con cualquier otro protocolo de transporte. Aunque los servicios web son muy simples y fáciles de implementar, WCF tiene una arquitectura más sólida que el servicio web. Los servicios web solo se pueden alojar en IIS y la seguridad es limitada. Pero WCF se puede alojar en IIS, servidores autohospedados con aplicaciones de consola o servicios Win NT o cualquier otro servidor. Además, a diferencia de los servicios web, WCF admite comunicaciones binarias. NET:. NET, transacciones distribuidas, especificaciones WS-, mensajería en cola y comunicaciones Restful.