Hoy voy a hablar de SOA (Servide Oriented Arquitecture) y como se aplica al Grid
Un servicio es un componente software accesible, típicamente desde la red, y que provee funcionalidad a quien la solicite.
Una
arquitectura orientada a servicios es un
estilo arquitectónico que contempla la implementación de componentes como servicios modulares que pueden ser descubiertos, utilizados y ensamblados, como piezas de Lego, por los usuarios (clientes, consumidores). Esto permite la creación de sistemas muy escalables y a la vez provee un estándar para acceder a los servicios.Los servicios pueden a su ver actuar como clientes de otros servicios y comunicarse unos con otros. Para esto es necesario que tengan una definición formal independiente de la plataforma o el lenguaje de programación, un protocolo que describa cómo se comunican entre sí y una serie de
metadatos que describa sus características (lo que hace, los recursos que necesita...). De este modo
cuando un cliente necesita que alguien le resuelva una tarea puede consultar los servicios disponibles y ver si alguno puede ejecutarla.
Si los servicios están
distribuidos por una red que el cliente no conozca tiene que haber alguien que se encargue de averiguar qué servicio puede ejecutar qué tarea, el encargado de esto es el
Service Broker.Supongo que ya se ven las similitudes ;).
Cada elemento del grid (ya sea un PC, un clúster, un instrumento de medida, una base de datos....) provee de ciertos recursos. Estos recursos son accesibles desde el middleware, que no es más una serie de componentes software que proporcionan el acceso controlado a estos recursos, es decir, proporcionan un servicio.

Estos son los servicios de
gLite, un middleware desarrollado por, entre otras 11 instituciones, el
CERN (Consejo Europeo de Investigación Nuclear), el sitio donde hacen la
antimateria en Angeles y Demonios :p.
Por supuesto todo esto es una visión simplificada, pero ni domino el tema ni quiero aburrir a mis lectores, en cualquier caso se aceptan sugerencias y correcciones.
En la próxima entrada os hablaré de InstrumentElement, la abstracción para integrar instrumentos en el Grid.
Fuentes:
An Overview of Service-oriented Architecture, Web Services and Grid Computing, Wikipedia (
es,
en)