Mensajería en Sistemas de Información
description
Transcript of Mensajería en Sistemas de Información
![Page 1: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/1.jpg)
Integrantes:
Marcelo CaponiPablo Rodríguez DefinoPablo Zamudio
Tutores:
Ing. MSc. Leonardo RodríguezIng. Diego Rivero
![Page 2: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/2.jpg)
- Entender soluciones basadas en mensajería
Estudiar EIP en SOA
SOA ∩ Mensajería
Futuro EIP → SOA
WS-* → EIPs
Frameworks y ESBs → EIPs
![Page 3: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/3.jpg)
![Page 4: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/4.jpg)
![Page 5: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/5.jpg)
Aplicación 1 Aplicación 2
Canal
![Page 6: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/6.jpg)
Brinda:Bajo AcoplamientoComunicación AsíncronaComunicación ConfiableOperación sin conexión
Pero …Modelo de Programación complejo
![Page 7: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/7.jpg)
Integración de aplicaciones
Diseminación de Información
Sistemas de Monitoreo Distribuido
Sistemas Móviles
![Page 8: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/8.jpg)
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.
![Page 9: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/9.jpg)
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
![Page 10: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/10.jpg)
Patrones de Diseño de Mensajería (EIP)
Diagramas de propósito general UML y otros
![Page 11: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/11.jpg)
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
![Page 12: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/12.jpg)
UML (Diagramas de estados, Diagramas de Actividad, Diagramas de secuencia, etc)
Diagramas de Contexto
Signal Wiring Diagrams
Block Diagrams
Workflow diagrams
SDL
![Page 13: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/13.jpg)
![Page 14: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/14.jpg)
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
![Page 15: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/15.jpg)
Web Services
Estándares WS-*
WS-Addressing
WS-ReliableMessaging
WS-Notification
WS-Enumeration
![Page 16: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/16.jpg)
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
![Page 17: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/17.jpg)
Implementables con Web Services
Implementables con estándares WS-*
Implementables con ESB
Composición de patrones simples
Implementación particular
![Page 18: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/18.jpg)
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.
![Page 19: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/19.jpg)
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.
![Page 20: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/20.jpg)
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.
![Page 21: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/21.jpg)
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.
![Page 22: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/22.jpg)
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.
![Page 23: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/23.jpg)
Composición de tres patrones
Return Address○ WS-Addressing
Correlation Identifier○ WS-Addressing
Message Router○ Capacidades de ruteo del ESB
![Page 24: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/24.jpg)
![Page 25: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/25.jpg)
![Page 26: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/26.jpg)
Agenciade Crédito
$$$
Banco 1
Banco N
...
.¿Banco 1 … Banco
N?
![Page 27: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/27.jpg)
Agenciade Crédito
Banco 1
Banco N
Servidor deFacturación
Servidor de Correo
Cliente
![Page 28: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/28.jpg)
AnálisisModelado del dominio del problemaContexto de la aplicaciónProceso de negocio
DiseñoEstructura de la aplicaciónAspectos de MensajeríaInteracción entre componentes
![Page 29: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/29.jpg)
![Page 30: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/30.jpg)
Apache ServiceMixComponentes para implementar EIPBasado en estándar JBI
Apache CXFStack de WS que implementa varias WS-*
![Page 31: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/31.jpg)
![Page 32: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/32.jpg)
![Page 33: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/33.jpg)
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
![Page 34: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/34.jpg)
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.
![Page 35: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/35.jpg)
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.
![Page 36: Mensajería en Sistemas de Información](https://reader036.fdocumento.com/reader036/viewer/2022062301/56814e24550346895dbb8846/html5/thumbnails/36.jpg)