Servicios Web (Web Services) en [1] lo definen como una colección de operaciones que un cliente puede utilizar a través de Internet. Las operaciones en un servicio web pueden ser proporcionadas por una variedad de recursos diferentes, por ejemplo, programas, objetos o bases de datos. Un servicio web puede ser administrado por un servidor web junto con páginas web; o puede ser un servicio totalmente separado.
En W3C definen a los servicios web como un sistema de software diseñado para admitir la interacción de máquina a máquina a través de una red. Tiene una interfaz descrita en un formato procesable por máquina (específicamente WSDL). Otros sistemas interactúan con el servicio web de la manera prescrita por su descripción utilizando mensajes SOAP, normalmente transmitidos mediante HTTP con una serialización XML junto con otros estándares relacionados con la web.
La arquitectura del Servicio Web esta compuesta de tres elementos: el proveedor del servicios web, el que pide el servicio web (cliente) y el publicador (corredor) del servicio (ver figura).
La interacción entre estos componentes se detallan a continuación: el proveedor de servicios envía al publicador (corredor) del servicio un fichero WSDL con la definición del servicio web. El que pide el servicio contacta con el publicador y descubre quién es el proveedor (protocolo WSDL) y contacta con el proveedor (protocolo SOAP). El proveedor valida la petición de servicio y envía el dato estructurado en formato XML utilizando el protocolo SOAP. El fichero XML es validado de nuevo por el que pide el servicio utilizando un fichero XSD (XML Schema).
![]() |
| Servicios |
Características de los Servicios Web
- Uso de XML para representación de los mensajes y SOAP como protocolo.
- Combinación con otros servicios web para construir otras funcionalidades.
- Uso de múltiple paradigmas de comunicación: Solicitud-Respuesta (RR) síncronos y RR asíncronos, o combinaciones de ellos.
- Acoplamiento Débil: minimizar las dependencias entre servicios proporcionando una arquitectura flexible y tolerancia a fallas
- Referencia a servicios: Uso de URL (o URN) para identificar los servicios
- Activación de servicios: el servicio puede estar activo o activarse por demanda, y puede estar replicado.
- Transparencia: se proporciona API para esconder los detalles del uso de SOAP y XML.
Referencias
- Coulouris, George F. Distributed Systems: Concepts and Design. Boston: Addison-Wesley, 2012.
- Tanenbaum, Andrew S., and Maarten van Steen. Distributed Systems: Principles and Paradigms. Upper Saddle River, NJ: Pearson Prentice Hall, 2007.
- Thomas Erl, Service Oriented Architecture: Principles of Service Design. The Prentice Hall Service-Oriented Computing Series by Thomas Erl. 2007
- Salas, A., Marquez, A. Arquitectura orientada a Microservicios aplicada a un sistema de Comercio Electrónico. Trabajo de Grado de Pregrado, UNEG. 2017.


No hay comentarios.:
Publicar un comentario