Windows Communication Foundation
WCF es un modelo unificado de desarrollo de aplicaciones con arquitectura orientada a servicios ( SOA), independiente de detalles de implementación como el protocolo de transporte, la seguridad, etc.
WCF consiste en un número de bibliotecas de clase contenidas en el NET Framework 3, para desarrollar sistemas que envían mensajes entre servicios y clientes sobre diversos mecanismos de transporte.
Características
- Cuenta con un modelo de programación unificado.
- Es la unificación de numerosas capacidades que antes podíamos encontrar en distintas tecnologías (como WS, WS*, Remoting, MSQueue, DCOM, etc).
- Permite separa claramente el desarrollo de lo que un servicio debe hacer, de la técnica de comunicaciones, y del lugar donde se hosteara un servicio.
- Se puede desarrollar sin tener que estar pensando el las capas de transporte y como se realizará la comunicación. O como será implementada los mecanismos de cifrado que aseguraran el canal de comunicaciones.
WCF permite crecer tanto horizontal como verticalmente nuestra solución de comunicaciones.
- Las comunicaciones crecen notablemente, porque da la libertad al desarrollador de utilizar múltiples transportes, distintos tipos de formatos de mensajes y diversos patrones de mensajes.
- El propio programador puede crear sus mecanismos de comunicación y/o utilizar l as bases que el framework hoy proporciona.
Las tecnologías de comunicación prexistentes que WCF engloba son:
· ASP.NET Web Services (incluyendo las WSE, Web Service Enhancements)
· Microsoft Message Queue
· Enterprise Services/COM+
· .NET Remoting
Ejemplos donde se puede hacer uso de WCF
· Un servicio seguro para procesar transacciones comerciales.
· Un servicio que proporciona datos actualizados a otras personas, como un informe sobre tráfico u otro servicio de supervisión.
· Un servicio de chat que permite a dos personas comunicarse o intercambiar datos en tiempo real.
· Una aplicación de panel que sondea los datos de uno o varios servicios y los muestra en una presentación lógica.
Ventajas
- Más flexible en los transportes: se puede usar HTTP, NetTcp, MSMQ, muchos más
- Se pueden alojar en el IIS, era, o auto-organizada en un servicio de Windows, en una aplicación de consola, en una aplicación Winforms o WPF
- Puede interoperar con SOAP 1.1 y SOAP 1.2
- Proporciona un único modelo de programación tipado de aplicaciones distribuidas basadas en servicios.
- Permite el desarrollo de aplicaciones . NET capaces de interoperar con aplicaciones desarrolladas con otras tecnologías (java, php .....).
Diferencias entre WCF con Web Service
- WCF es la evolución de las tecnologías web service de Microsoft de años anteriores.
- WCF provee un amplio rango de funcionalidad por encima de web services, con mejores características en aspectos de calidad como flexibilidad, portabilidad y mantenibilidad.
- Los web services sólo pueden ser accedidos a través de HTTP, mientras que WCF se puede hospedar en un servidor web, WAS, puede ser un servicio de windows, y usa una variedad de protocolos más amplia.
- En la plataforma .NET, la serialización de los datos de los web services se hace a través de la lase XmlSerializer , mientras que para WCF se usa la clase DataContractSerializer . Cabe anotar que esta última es más optimizada para WCF, por lo que provee una mejora en rendimiento a comparacion del XmlSerializer .
- Al DataContractSerializer se le puede indicar cuáles propiedades de las entidades de datos serán serializadas. Esto permite optimizar el tamaño de las peticiones de datos que se generan.
- Hay clases que no se pueden serializar a través de un web service en .NET que si tienen soporte en WCF (HashTable por ejemplo).
No hay comentarios:
Publicar un comentario