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
Mar 30, 2018
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
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.
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.
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).
MetaEmotionMetaEmotionhttp://www.metaemotion.com
[email protected](+34) 983 10 84 94
Funcionamiento de Mirth
Versión 0.5
Salamanca, 25 de Febrero de 2011
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.
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
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
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)
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:
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
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).
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
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
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
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.
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
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).
MetaEmotionMetaEmotionhttp://www.metaemotion.com
[email protected](+34) 983 10 84 94
Notificación de errores (I).
● Subscripciones a Alertas por correo electrónico.
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>^~\&</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>
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.
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.
MetaEmotionMetaEmotionhttp://www.metaemotion.com
[email protected](+34) 983 10 84 94
Monitorización
Versión 0.6
Salamanca, 25 de Febrero de 2011
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.
MetaEmotionMetaEmotionhttp://www.metaemotion.com
[email protected](+34) 983 10 84 94
Banco de pruebas
Versión 0.6
Salamanca, 25 de Febrero de 2011
MetaEmotionMetaEmotionhttp://healthcare.metaemotion.com
[email protected] Vinos de la Ribera del Duero, 5. 1ºB.
47008, Valladolid.
(+34) 983 10 84 94