jueves, 1 de abril de 2010

Integración entre sistemas a través de un ESB


La mayoría de las organizaciones disponen de diversos sistemas y aplicaciones que se integran y que deben estar sincronizados. Un Enterprise Service Bus (ESB) es una infraestructura de software que funciona como capa intermedia (middleware), proporcionando servicios de integración de las distintas aplicaciones a través de mensajería basada en estándares y servicios de sincronización. Aunque un ESB no implementa por sí mismo una arquitectura orientada a servicios (SOA), proporciona características para su implementación.
¿Qué es un ESB?
Un bus de integración (ESB) ocupa la capa de abstracción intermedia (middleware) entre los distintos sistemas de una o varias organizaciones, proporcionando mecanismos de comunicación y transformación a través de mensajería basada en estándares.
En definitiva, un ESB debe ser capaz de reemplazar todo el contacto directo entre aplicaciones, consiguiendo que todas ellas se comuniquen a través del bus.
Los ESB transmiten y reciben mensajes basados en estándares, pero deben ser capaces de transformar mensajes a formatos que sean reconocidos por las distintas aplicaciones en el caso de que sea necesario, lo que se realiza a través de adaptadores.
Además, el intercambio de mensajes debe ser independiente de la plataforma. Esto permite al ESB integrar aplicaciones que se ejecutan en diversos sistemas operativos o mainframes.

Características de un ESB
Independientes respecto a sistemas operativos y lenguajes de programación.
Uso de XML como lenguaje estándar de comunicación.
Soporte de estándares de Servicios Web.
Adaptadores para realizar la integración con aplicaciones.
Modelo de seguridad estándar para autorizar, autentificar y auditar el uso del ESB.
Transformación de mensajes.
Validación de mensajes.
Enrutamiento de mensajes aplicando reglas de negocio y en función del contenido del mensaje.
Manipulación de excepciones.
Soporte a encolado y mantenimiento de mensajes, si las aplicaciones no están disponibles.
Monitorización del sistema y de la actividad de negocio (BAM).

Beneficios del uso de un ESB
Integraciones más rápidas y económicas de los sistemas.
Mayor flexibilidad ante cambios.
Basado en estándares.
Servicios predefinidos que ahorran costes de desarrollo.
Más configuración que código a la hora de integrar.
Mayor control del sistema.
Reglas de negocio manejadas por analistas de negocio.
Seguridad en la integración entre aplicaciones.

No hay comentarios: