Siguiente: Ventajas y desventajas de
Subir: Web Services
Anterior: Definici'on
Índice General
En primera instancia, la w3cg establece que un Web Service tiene una interfaz descrita en un formato procesable por la m'aquina, espec'ificamente WSDL .14. Otros sistemas interact'uan con el Web Service de un manera predefinida por su descripci'on usando mensajes SOAP, t'ipicamente transmitidos usando HTTP (del ingl'es HyperText Transfer Protocol) con una publicaci'on XML, junto con otros est'andares web.
Seg'un redbookSOAWS algunas de las caracter'isticas claves de los Web Services se mencionan a continuaci'on:
- Self-contained .15. El cliente no requiere software adicional. En principio, es suficiente un lenguaje de programaci'on que soporte XML y clientes HTTP. Del lado del servidor, solamente se requiere un servidor Web y un motor de servlets .16.
- Self-describing. Ni el cliente ni el servidor sabe o se preocupa por lo que est'a detr'as del formato y contenido de los mensajes de solicitud y de respuesta. Esto es lo que se llama ``integraci'on desacoplada''. La definici'on del formato del mensaje viaja con el mensaje. No se requieren repositorios de metadatos o herramientas para generar c'odigo.
- Modulares. Se trata de una tecnolog'ia para desplegar y proveer acceso a funciones de negocio sobre la Web. J2EE, CORBA y otros est'andares son tecnolog'ias con las que se implementan dichos Web Services.
- Se pueden publicar, encontrar, buscar e invocar a trav'es de la web. Los est'andares requeridos para tal fin son:
- SOAP. Tambi'en conocido como protocolo de la arquitectura SOA, un RPC (del ingl'es Remote Procedure Call) basado en XML y alg'un protocolo de env'io y recepci'on de mensajes.
- WSDL. Una interfaz descriptiva y un lenguaje de asociaci'on del protocolo.
- UDDI. Un mecanismo de registro que puede ser usado para buscar descripciones de los Web Services.
- Independientes del lenguaje e interoperables. La interacci'on entre un proveedor de servicio y un servicio solicitante .17, est'a diseñada para ser completamente independiente de la plataforma y del lenguaje. Esta interacci'on requiere un documento WSDL para definir la interfaz y describir el servicio, junto con un protocolo de red (usualmente HTTP). Debido a que el proveedor de servicio es independiente de la plataforma o el lenguaje empleado, se da lugar a la interoperabilidad.
- Inherentemente abiertos .18 y basados en est'andares. XML y HTTP son las bases t'ecnicas de los Web Services. Una gran parte de la tecnolog'ia de los Web Services ha sido desarrollada usando proyectos Open Source. Por lo tanto, se mantiene la interoperabilidad del software y la independencia de los vendedores comerciales.
- Din'amicos. Es posible crear aplicaciones altamente din'amicas ya que con UDDI y WSDL se automatiza la descripci'on, b'usqueda y descubrimiento de los Web Services.
- Componibles. Web Services simples pueden agregarse a otro(s) m'as complejo(s), ya sea usando t'ecnicas de workflow .19 o
haciendo llamadas a los Web Services de capas inferiores desde la implementaci'on de un Web Service.
La Figura
ilustra la arquitectura de los Web Services. Como se puede observar, los agentes de software engranados en las operaciones del Web Service pueden actuar en tres roles: proveedores de servicio, solicitantes de servicio y registros de servicio (agentes que realizan las operaciones de buscar y recuperar).
Figura:
Arquitectura de un Web Service (roles y operaciones).
|
Fuente: w3cWSA
|
Los proveedores de servicio administran dos componentes b'asicos de un Web Service: el servicio en s'i y la descripci'on del servicio. Un servicio es un m'odulo de software implementado en una tecnolog'ia particular (.NET, Java, etc.) y es accesible a trav'es de una red. 'Este es invocado por un servicio solicitante y tambi'en puede funcionar como un solicitante a la vez.
La descripci'on del servicio es un conjunto de documentos XML que contienen detalles de la interfaz y la implementaci'on, incluyendo: los tipos de datos, operaciones, detalles de interacci'on (descripci'on de asociaci'on), ubicaci'on de la red y metadatos opcionales w3cWSA.
Dependiendo de los roles ejercidos por los agentes de software, una de las tres operaciones ocurre durante la interacci'on con los otros roles: publicaci'on, b'usqueda y recuperaci'on de las descripciones del servicio, y la invocaci'on de servicios basados en dichas descripciones.
Una vez se han presentado los aspectos relacionados con la arquitectura de los Web Services, en la siguiente secci'on se presentan algunas ventajas y desventajas de los mismos.
Siguiente: Ventajas y desventajas de
Subir: Web Services
Anterior: Definici'on
Índice General
Daniel Moros
2010-05-05