Top Banner
MetaEmotion MetaEmotion hp://www.metaemoon.com [email protected] (+34) 983 10 84 94 Introducción a Mirth Carlos Barrales Ruiz [email protected] Versión 0.6 Salamanca, 25 de Febrero de 2011
26

Introducción a Mirth - Asociación de Informáticos de ... [email protected] (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

Mar 30, 2018

Download

Documents

dangquynh
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Introducción a Mirth

Carlos Barrales [email protected]

Versión 0.6

Salamanca, 25 de Febrero de 2011

Page 2: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Introducción (I).

El problema de la heterogeneidad de aplicaciones.

● Incompatibilidades:

– Datos.– Protocolos.– Tecnologías.

● Problemas:– Control.– Seguridad.– Tolerancia frente a

fallos.

Page 3: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Introducción (II).

● Mediar en el intercambio de información (mensajería) entre aplicaciones:

– Filtrar, generar, copiar, redirigir y/o modificar mensajes.

– Punto estratégico de control.● Minimizar el impacto de errores en las

comunicaciones.● Maximizar la disponibilidad de los puntos

de entrega y recepción.

Responsabilidades de un motor de integración.

Page 4: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Introducción (III).

La versión estable actual de Mirth Connect es la 1.8.2.

Mirth está desarrollado y mantenido de manera oficial por la empresa Mirth Corp Inc.http://www.mirthcorp.com/ (Página Oficial de la empresa y del proyecto).

Page 5: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Funcionamiento de Mirth

Versión 0.5

Salamanca, 25 de Febrero de 2011

Page 6: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Funcionamiento de Mirth.

● Internamente, modela canales de comunicación.

● Los mensajes fuyen a través de los canales de Mirth.

● Los canales pueden interconectarse a su vez entre ellos de manera fexible.

● Se administra mediante una interfaz vía java webstart.

Imagen obtenida de http://www.mirthproject.org © Mirth Proyect.

Mirth es un servicio disponible de manera permanente.

Page 7: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Funcionamiento de Mirth (II).Modos de interconexión:

Imágenes obtenidas de http://www.webreachinc.com/products/mirth © WebReach Inc.

Leyenda:● C: Conector de origen/destino de un Canal.● F: Filtro. Generalmente descarta mensajes, pero puede contener scripting

javascript).● T: Transformador. Generalmente son invocaciones a objetos de transformación de

formatos: Ej: ER7=>XML

Page 8: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Instalalación de Mirth

Versión 0.6

Salamanca, 25 de Febrero de 2011

Page 9: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Instalación de Mirth

● Instalación/despliegue– Distribuíble sencillo de desplegar

● (instalador .jar, .app o paquetes .zip, tgz, etc.)● Modo stand-alone que no requiere intervención de

despliegue.– Servidor de aplicaciones:

● .sar de Jboss.● Configuración básica (Fichero conf/mith.properties)

– HTTP/HTTPS de escucha de la interfaz.– Backend de persistencia.

● Backend de persistencia. (Fichero conf/<backend>-SqlMapConfig.properties)

Page 10: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Ejemplo de configuración de Mirth.

configuration.id=MirthConfigurationhttp.port=18080http.htdocs=publichttps.port=18443https.keystore=keystorehttps.password=abc12345https.keypassword=abc12345https.ciphers=SSL_RSA_WITH_RC4_128_MD5,SSL_RSA_WITH_RC4_128_SHA,TLS_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_DSS_WITH_AES_128_CBC_SHA,SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA,SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHAcontext.path=/server.url=database=oracle# jmx connectionjmx.port=1099jmx.password=password# mulemule.config=mule-config.xmlmule.boot=mule-boot.xmlmule.template=mule-template.xmlmule.queue=${mirthHomeDir}/.mule

database=oracledriver=oracle.jdbc.OracleDriverurl=jdbc:oracle:thin:@localhost:1521:MIRTHusername=adminpassword=admin

Fichero mirth.properties: Fichero oracle-SqlmapConfig.properties:

Page 11: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Administración de Mirth

Versión 0.6

Salamanca, 25 de Febrero de 2011

Page 12: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Canales habituales.

● Mensajes en contenedor XML.● Conectores de Origen:

– Tipo:● MLLP.● Channel Reader (Conector VM).

● Conectores de destino:– Tipo:

● MLLP.● Channel Writer (Conector VM).

– Tipos de entregas.● Entrega retardada (encolada).● Entrega inmediata (No encolada).

Page 13: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Topología habitual (I).● Modelo publicador/subscriptor.

S1_RECEPCIONMLLP

MLLP

Sistema 1

VM

VM

S1_ENVIO

S2_RECEPCIONMLLP

MLLP

Sistema 2

VM

VM

S2_ENVIO

MIRTH

Page 14: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Topología habitual (II).● Interconexión subscriptor → publicador

– Modeladas como nuevos destinos.

S1_RECEPCIONMLLP

MLLP

Sistema 1

VM

VM

VM

S1_ENVIO

S2_RECEPCIONMLLP

MLLP

Sistema 2

VM

VM

S2_ENVIO

MIRTH

Page 15: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Topología habitual (III).● Ejemplo real

HISMLLP

HIS

VM

VM

GALENO2_RECEPCIONMLLP

MLLP

GALENO2

VM

VM

GALENO2_ENVIO

MIRTHHIS GALENO2

Page 16: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Topología de pruebas● Esquema de la simulación del entorno.

HISMLLP

HIS

VM

VM

GALENO2_RECEPCIONMLLP

MLLP

GALENO2

VM

VM

GALENO2_ENVIO

MIRTHHIS GALENO2

6660 6661

6662

● Pruebas:– NACK.– Envío a canal caído.– Fallos diversos: Codificación, etc.

Page 17: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Intervención frente a errores

Versión 0.6

Salamanca, 25 de Febrero de 2011

Page 18: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Comportamiento frente a errores.

● Envío directo:– Mensaje marcado como erróneo y envío de alerta.

● Envío encolado:– Mensaje marcado como erróneo y envío de alerta– Comportamiento adicional configurable:

● Reintento del envío.● Pausa del canal.● Omisión del mensaje (como en el envío directo).

Page 19: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Notificación de errores (I).

● Subscripciones a Alertas por correo electrónico.

Page 20: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Notificación de errores (II).

● Mensajes de error

From: carlos@localhostTo: carlos@localhostSubject: Mirth AlertContent-Type: text/plain; charset=us-asciiContent-Transfer-Encoding: 7bit

ERROR-408: MLLP Connector errorERROR MESSAGE: [ Channel S1_ENVIO, Destination 6f58a5de-76ad-486a-a906-32f2879c8b88_destination_2_connector, MessageType OUL_R22, MessageId 568e0168-b422-462f-8809-065fca8e578a ]NACK Received: <?xml version="1.0" encoding="UTF-8"?><ACK><MSH><MSH.1>|</MSH.1><MSH.2>^~\&amp;</MSH.2><MSH.3.1><HD.1>10APP</HD.1></MSH.3.1><MSH.4.1><HD.1></HD.1></MSH.4.1><MSH.5.1><HD.1>SIMPLERECEIVER</HD.1></MSH.5.1><MSH.6.1><HD.1>000000</HD.1></MSH.6.1><MSH.7.1><TS.1></TS.1></MSH.7.1><MSH.9.1>ACK</MSH.9.1><MSH.9.2></MSH.9.2><MSH.9.3>ACK</MSH.9.3><MSH.10>__ACK_RESPONSE</MSH.10><MSH.11.1>P</MSH.11.1><MSH.12.1>2.5</MSH.12.1><MSH.13></MSH.13><MSH.14></MSH.14><MSH.15>AL</MSH.15><MSH.16>NE</MSH.16></MSH><MSA><MSA.1.1>AE</MSA.1.1><MSA.1.2>__ACK_RESPONSE_FAIL</MSA.1.2></MSA><ERR><ERR.1><CWE.1>207</CWE.1><CWE.2>ERROR INTERNO</CWE.2><CWE.3>HL70357</CWE.3></ERR.1><ERR.4>E</ERR.4><ERR.7>This error has been forced intentionally</ERR.7></ERR></ACK>

Page 21: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Tipos de errores comunes.

● Problemas en base de datos.● Caída de aplicación.● Errores de codificación de mensajes.● Error de aplicación (NACK).● Escritura en canal parado o no desplegado.

Page 22: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Intervenciones comunes.

● Arranque de un canal.● Ajustes de configuración y re-despliegue.● Manipulación de colas.

– Reordenación.– Omisión de mensaje erróneo.– Edición de mensaje erróneo.

Page 23: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Monitorización

Versión 0.6

Salamanca, 25 de Febrero de 2011

Page 24: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Puntos clave.

● Estadísticas de los canales.Acumulaciones de mensajes → aumento de tasas de respuesta.

– Agentes activos.● Procesamiento de alertas.

Respuestas frente a alertas.– Agentes pasivos.

● Base de datos.Si se almacenan muchos mensajes, tienden a saturarse.

– Sistemas activos.

Page 25: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Banco de pruebas

Versión 0.6

Salamanca, 25 de Febrero de 2011

Page 26: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://healthcare.metaemotion.com

[email protected] Vinos de la Ribera del Duero, 5. 1ºB.

47008, Valladolid.

(+34) 983 10 84 94