3 jun 2008

Integration Broker (Parte 6) Version Tools hasta 8.46

¿Qué es Canal?

Canal de Mensajes: Un Canal, agrupa Mensajes. En cada nodo participante debe tener el mismo nombre de Canal para la comunicación del mensaje que este contiene. El canal es una agrupación lógica de mensajes.

Creación y definición del Canal de Mensaje


Los canales se utilizan para:


  • Establecer un procesamiento secuencial.

  • Mantener la seguridad en la mensajeria

Message Partitioning: sólo el mensaje con el mismo valor en un campo dividido se procesará secuencialmente. Si el valor es diferente, el mensaje puede ser procesado en paralelo.


Partición de Canal



Los canales de mensajes admiten una funcionalidad de ajuste del rendimiento denominada partición de mensajes. Puede seleccionar uno o varios campos comunes de los registros de nivel 0 de los mensajes de ese canal para realizar particiones. Al seccionar un campo común, en lugar de procesar cada mensaje en su orden de publicación, sólo se procesará secuencialmente los mensajes con el mismo valor en un campo de partición. Si los valores son diferentes, el mensaje puede procesarse en paralelo.


En la ventana Use These Fields to Partition, verá una lista de todos los campos comunes para todos los mensajes asignados a ese canal, además de los cuatro campos siguientes (siempre):


MSGNAME
MSGNAMEDETAIL
PUBLISHER
PUBPROC

Estos cuatro campos se han añadido en la versión 8.4 para permitir particiones de los mensajes sin campos comunes.




Envio de mensajes sin Partición





Todos los mensajes posteriores para todos los empleados mantienen el estado NEW hasta que se corrija el error

En este ejemplo podemos ver el paso de un nodo a otro de una serie de mensajes relacionados con empleados, con un error en el mensaje inicial para el ID de empleado 8101. El campo común de todos los mensajes es EMPLID, pero la utilidad de partición está desactivada.

Sin particiones, los demás campos EMPLID (por ejemplo, el 8508) no se procesarán hasta que se corrija el error. Esto se debe a que, sin particiones, no podemos saber dónde termina el mensaje de un empleado y empieza el del siguiente.

Envio de mensajes con Partición



El campo EMPLID se utiliza para realizar particiones de los mensajes del canal. Por tanto, los procesos de suscripción de los mensajes del canal se llevarán a cabo secuencialmente respecto al campo EMPLID.

Aquí podemos ver que se ha producido el mismo error para el EMPLID 8101 que en el ejemplo anterior. Puesto que la utilidad de partición se encuentra activada, los mensajes correspondientes al EMPLID 8508 se procesarán en orden, sin obstáculos, y los mensajes con errores esperarán en la cola (con el estado Error) hasta haber sido corregidos y reenviados.



Propiedades del Canal




Para acceder al cuadro de diálogo Message Channel Properties, utilice el icono de propiedades de la barra de herramientas o seleccione File, Definition Properties.


Message Channel Status:


  • Run : los mensajes asignados al canal son recibidos y procesados normalmente.

  • Pause: Los mensajes son recibidos pero no son precesados hasta que se encuentra en Run.


Archive Messages? : Para que se puedan guardar o eliminar los mensajes.

Unordered?: Se selecciona para que los mensajes dentro del canal, puedan correr en forma paralela.

Los mensajes de los contrario en el canal correran en forma secuencial.

Quality of Service:

Best Effort: hasta 8.44 no esta implementado.
Guaranteed: Si el IB falla al enviar un mensaje, se reenvia hasta que termina el tiempo (TimeOut). Se marca el mensaje como TimeOut.


Seguridad para los Canales



Para poder consultar el canal de mensajes en el monitor de Integración con Mensajería, el usuario debe disponer de permisos de seguridad para el mismo. La seguridad se establece en la lista de permisos.

El permiso puede ser completo (Full) o de sólo lectura (Read Only).

No hay comentarios: