Google

martes, junio 06, 2006

SOA y los Servicios Web (I)

En la actualidad el concepto de SOA ha resurgido, gracias al auge y madurez de una nueva tecnología: los Servicios Web.

Los Servicios Web se han convertido en el estandarte de SOA, ya que esta tecnología posee un conjunto de características que permiten cubrir todos los principios de la orientación a servicios, no como otras posibles tecnologías de implementación como colas de mensajes o CORBA.

Centrándonos en los Servicios Web, podemos decir que con ellos se pueden generar dos tipos de Arquitecturas Orientadas a Servicios:

  • Arquitectura Orientada a Servicios Tradicional.
  • Arquitectura Orientada a Servicios de segunda generación.

En el presente artículo describiré la primera de ellas.

La SOA Tradicional es aquella que utiliza los principios y tecnologías básicos de los Servicios Web. Esto significa utilizar SOAP como lenguaje de intercambio, WSDL como lenguaje para la descripción de los servicios y UDDI para la publicación o registro de los mismos. En el dibujo que se muestra a continuación, se puede ver la estructura básica de funcionamiento de una SOA tradicional.

En el gráfico anterior, se puede observar la existencia de tres roles claramente diferenciados:

  • Cliente del servicio: Es el que solicita la ejecución del servicio web, y por lo tanto el que lo consume.
  • Proveedor del servicio: Es el encargado de implementar el servicio web y ofrecerlo a los clientes.
  • Registro del servicio: Es un repositorio donde se almacenan las descripciones de los servicios, para que así los clientes puedan buscar el servicio web que mejor se adapte a sus necesidades.

La secuencia de ejecución es la siguiente:

1. El proveedor del servicio da de alta el servicio web en el registro. Para realizar esto, el proveedor almacena en el registro el documento de descripción de este.

2. El solicitante del servicio busca en el registro un servicio web que pueda adaptarse a sus necesidades.

3. Una vez seleccionado el servicio, el solicitante lo invoca mediante el envío de un mensaje SOAP, en el cual se indica la acción a realizar y los datos de entrada.

4. El servicio web recibe la petición y ejecuta la funcionalidad. Para finalizar envía un mensaje SOAP al solicitante con los resultados obtenidos.

Por lo tanto, una SOA tradicional estará compuesta por un conjunto de servicios que reciben y envían mensajes SOAP en base a una descripción WSDL. Este tipo de arquitecturas hoy en día es muy utilizado, pero no es el más óptimo debido a que no porpociona una serie de características esenciales a la hora de crear una Arquitectura profesional. Estas características son:

  • Seguridad
  • Transaccionabilidad
  • Garantía de entrega
  • Orquestación
  • Coreografía
  • Direccionamiento
  • etc...

Estas características las ofrecen las SOA de segunda generación, que serán el tema central de otro artículo.

1 Comments:

At 1:45 a. m., Blogger Mifrero said...

Gracias por la explicación tan didáctica!!! Es un gusto encontrar un post que responda la pregunta exacta que te ronda la mente.
Saludos!!!

 

Publicar un comentario

<< Home