mensajería en sistemas de información
DESCRIPTION
Integrantes: Marcelo Caponi Pablo Rodríguez Defino Pablo Zamudio Tutores: Ing. MSc. Leonardo Rodríguez Ing. Diego Rivero. Mensajería en Sistemas de Información. Objetivos. - Entender soluciones basadas en mensajería. SOA ∩ Mensajería. Futuro EIP → SOA. Estudiar EIP en SOA. - PowerPoint PPT PresentationTRANSCRIPT
Integrantes:
Marcelo CaponiPablo Rodríguez DefinoPablo Zamudio
Tutores:
Ing. MSc. Leonardo RodríguezIng. Diego Rivero
- Entender soluciones basadas en mensajería
Estudiar EIP en SOA
SOA ∩ Mensajería
Futuro EIP → SOA
WS-* → EIPs
Frameworks y ESBs → EIPs
Aplicación 1 Aplicación 2
Canal
Brinda:Bajo AcoplamientoComunicación AsíncronaComunicación ConfiableOperación sin conexión
Pero …Modelo de Programación complejo
Integración de aplicaciones
Diseminación de Información
Sistemas de Monitoreo Distribuido
Sistemas Móviles
Channels: Direcciones lógicas en el sistema de mensajería.
Messages: Entidades que transportará el sistema de mensajería.
Message Endpoint: Permite conectar una aplicación al sistema de mensajería.
Permite la comunicación entre aplicaciones mediante el intercambio de mensajes.
Características:ConfiableAsíncronaCon garantía de entregaCon notificación de entregaCon manejo transaccional
Patrones de Diseño de Mensajería (EIP)
Diagramas de propósito general UML y otros
Channel Patterns Point-to-Point Channel
Message Patterns Correlation Identifier
Routing Patterns Message Router
Transformation Patterns Content Filter
Endpoint Patterns Message Selector
Management Patterns Wire Tap
UML (Diagramas de estados, Diagramas de Actividad, Diagramas de secuencia, etc)
Diagramas de Contexto
Signal Wiring Diagrams
Block Diagrams
Workflow diagrams
SDL
Porqué EIP al integrar servicios ?
Mensajería madura para integración (EIP)
WS y ESB en auge para integrar servicios
WS-* → EIPs
Frameworks y ESB → EIPs
Web Services
Estándares WS-*
WS-Addressing
WS-ReliableMessaging
WS-Notification
WS-Enumeration
Funcionalidades básicas
Conversión de protocolos de transporte
Transparencia de localización
Transformación de mensajes
Ruteo de mensajes
Soporte a ejecución de procesos de negocio
Monitoreo y administración
Implementables con Web Services
Implementables con estándares WS-*
Implementables con ESB
Composición de patrones simples
Implementación particular
Publish-Subscribe Channel
Problema ○ ¿Cómo notificar a un conjunto de destinatarios
ante la ocurrencia de un evento?.
Solución ○ Usar un canal Publish-Subscribe al que los
destinatarios se subscriben.
Utilización de:WS-Notification (WS-BrokeredNotification y WS-Topics)
Servicios destinatarios se subscriben a un tópico y son notificados ante eventos.
Se utiliza al ESB como implementación de WS-BrokeredNotification y WS-Topics.
Content-Based Router
Problema○ ¿Cómo diseminar información en base a su
contenido?
Solución○ Usar un Content-Based Router, un router que
derive mensajes en base a su contenido.
Se utilizan las capacidades de ruteo del ESB.
Por cada destinatario se definen reglas de ruteo que determinan las condiciones de entrega de mensajes.
Por ejemplo, condiciones expresadas en XPath sobre mensajes SOAP.
Smart Proxy
Problema○ Lograr interceptar las invocaciones y respuestas a un
servicio que responde siempre a la dirección de indicada por el invocador.
Solución○ Usar un Smart Proxy que intercepte las invocaciones y
respuestas del servicio.
Composición de tres patrones
Return Address○ WS-Addressing
Correlation Identifier○ WS-Addressing
Message Router○ Capacidades de ruteo del ESB
Agenciade Crédito
$$$
Banco 1
Banco N
...
.¿Banco 1 … Banco
N?
Agenciade Crédito
Banco 1
Banco N
Servidor deFacturación
Servidor de Correo
Cliente
AnálisisModelado del dominio del problemaContexto de la aplicaciónProceso de negocio
DiseñoEstructura de la aplicaciónAspectos de MensajeríaInteracción entre componentes
Apache ServiceMixComponentes para implementar EIPBasado en estándar JBI
Apache CXFStack de WS que implementa varias WS-*
Análisis y diseño de una solución basada en mensajería
Implementación de todos los EIPs sobre las herramientas seleccionadas
Simple para casos que plataforma brinda soporte
Complejo para mapear conceptos de mensajería a conceptos de JBI
Se entendieron conceptos de mensajería y aspectos relevantes en este tipo de soluciones.
Se logran propuestas de implementación para EIPs usando ESB, Web Services y estándares WS-*.
EIPs vigentes en contextos de integración de servicios.
Existen aspectos de este tipo de soluciones que no se pueden especificar con UML.
Falta de propuestas metodológicas de cómo abordar la parte concerniente a mensajería de una solución.
Implementación de EIP en SOA es factible.
Estándares WS-* tienden a implementar EIP, pero no los cubren aun en su totalidad.