Message

Enviado por Programa Chuletas y clasificado en Informática y Telecomunicaciones

Escrito el en español con un tamaño de 10,32 KB

ï?§ El message header identifica el mensaje (message ID) y contiene información de control, tales como correlation ID, prioridad, expiración, nombre de cola de respuesta, etc ï?§ Un mensaje puede ser sobre 4 Mb o 100 Mb de tamaño, dependiendo de la versión de MQSeries a utilizar. La versión 5 soporta mensajes de hasta 100 Mb . ï?§ Distribution Lists: Usando MQSeries se puede enviar un mensaje a más de una cola de destino con solo una llamada de una rutina MQPUT ï?§ Message Types: Datagram: Contiene datos pero no espera respuesta Request: Se espera una respuesta Reply: Una respuesta a un requerimiento Report: Un mensaje especial que describe un evento ï?§ Persistencia: ï?? Los mensajes pueden ser persistentes o no persistentes. Un mensaje persistente sobrevive a una falla del sistema, ya que es almacenado en logs ï?§ Message Descriptor: Version: indica la versión de MQSeries o plataforma utilizada Message ID y Correlation ID: permiten identificar un requerimiento o respuesta en forma única Persistence: flag que indica si el mensaje es persistente o no Priority: indica la importancia del mensaje, permitiendo controlar el orden es que es procesado Time and Date: hora y fecha de envío del mensaje Expiration Time: fecha de expiración del mensaje. Cumplida esa fecha, el mensaje se elimina del sistema ReplyTQueue and ReplyToQueueManager: indica el nombre de la cola y queue manager de respuesta Format: un valor utilizado por el receptor para decirdir si realizar una conversión sobre la data Report options: permite registrar eventos asociados al envío o recepción de mensajes Backout counter: un contador que registra las veces en que un mensaje es devuelto a la cola § :Concepto de queue Manager: ï?§ Representa el corazón de MQSeries. Corresponde a un proceso que gestiona las colas y mensajes ï?§ Provee una interfaz Message Queuing Interface (MQI) para la comunicación con las aplicaciones ï?§ Una aplicación invoca funciones de un queue manager usando llamadas a una API. Por ejemplo, MQPUT permite colocar un mensaje en una cola. La rutina MQGET lo recupera ï?§ Un programa puede enviar mensajes a otro programa que corre en la misma máquina que el Queue Manager, o puede enviar mensajes a una aplicación que ejecuta en un sistema remoto ï?§ Eï?§ Un Queue Manager transfiere mensajes a otro queue manager por medio de un Canal, los cuales utilizan las facilidades de red como TCP/IP ï?§ Los programas emisores no necesitan conocer la ubicación del programa destino. MQSeries sabe qué hacer cuando el sistema remoto no está disponible o el programa destino no está en ejecución o ocupado l sistema remoto tiene su propio Queue Manager, con sus propias colas ï?§ Un Queue Manager transfiere mensajes a otro queue manager por medio de un Canal, los cuales utilizan las facilidades de red como TCP/IP ï?§ Los programas emisores no necesitan conocer la ubicación del programa destino. MQSeries sabe qué hacer cuando el sistema remoto no está disponible o el programa destino no está en ejecución o ocupado Funciones de queue Manager: ï?§ Las funciones de un queue manager son: ï?? Maneja colas de mensajes para aplicaciones ï?? Provee una interfaz de programación, MQI ï?? Utiliza las facilidades de red para transmitir mensajes ï?? Coordina actualizaciones a base de datos y colas utilizando un mecanismo de two-phase commit ï?? Puede enviar un mensaje a varios destinos, a través de la invocación a una API ï?? Provee funcionalidades de administración que permiten crear, modificar y eliminar colas. MQSeries para Windows provee una interfaz gráfica para estas tareas qu eues : ï?§ Las colas son objetos pertenecientes a un queue manager. Existen diferentes tipos de colas: ï?? Cola local: es una cola real ï?? Cola remota: describe una cola en otro q. manager ï?? Cola de transmisión (Xmitq): cola local especial ï?? Cola de iniciación: cola local especial ï?? Cola dinámica: cola creada dinámicamente ï?? Cola alias: permite definir un alias de una cola ï?? Cola dead-letter: solo una cola por queue manager ï?? Cola reply-to: cola de respuesta ï?? Cola modelo: permite crear colas a partir de ella ï?§ Cola local: Una cola es local si pertenece al queue manager al cual la aplicación está conectada. Tanto la aplicación emisora como receptora no necesariamente deben estar en la misma máquina ï?§ Cola cluster: Es una cola local que es conocida por todo el cluster que queue managers. Cualquier queue manager que pertenece al cluster puede enviar mensajes a la cola sin la necesidad de la definición de una cola remota ï?§ Cola remota: Es una cola que pertenece a otro queue manager. No es una cola real, sino una representación de una cola que existe en otro queue manager ï?§ Cola de transmisión: Es una cola utilizada para transmitir mensajes entre queue managers. Una cola remota está asociada a una cola de transmisión. Hay solo una cola de transmisión para un queue manager remoto. En un cluster, hay solo una única cola de transmisión para enviar mensajes al resto de queue managers del cluster ï?§ Cola dinámica: Es una cola definida â??al vueloâ?, en el sentido que es creada y eliminada durante la ejecución de una aplicación. Una cola dinámica es una cola local ï?§ Cola alias: No son colas reales, sino â??sinónimosâ? de otras colas. Permite que múltiples aplicaciones tengan sus propias colas asociadas, pero en realidad, es la misma para todas ï?§ Cola modelo: No es una cola real. Es una cola utilizada como â??plantillaâ? para la definición de una cola dinámica. La cola dinámica copia todas las caracterísiticas ï?§ Cola de iniciación: Es una cola local que es utilizada por un queue manager para escribir un mensaje de trigger cuando ser reúnen ciertas condiciones (cuando un mensaje es colocado en una cola vacía) ï?§ Cola reply-to: Un mensaje de requerimiento debe contener el nombre de una cola en la cual espera recibir la respuesta ï?§ Cola dead-letter: Un queue manager debe ser capaz de manejar situaciones donde no pueda entregar un mensaje. Algunos casos son: La cola de destino está llena La cola de destino no existe La cola no permite colocar mensajes (put deshabilitado) El emisor no está autorizado a colocar mensaje s. El mensaje es demasiado grande El mensaje tiene un identificador duplicado § :En que consiste un sistema de mensajeria: ï?? Queue manager (MQM) ï?? Listener ï?? Trigger Monitor ï?? Channel Initiator ï?? Message Channel Agent (MCA) como funciona mqseries: ï?§ Cuando una aplicación desea colocar un mensaje en una cola, invoca una API MQPUT ï?§ El queue manager chequea si la cola indicada es local o remota ï?§ Si la cola es remota, el mensaje es colocado en una cola de transmisión. El queue manager agrega información al header del mensaje tal como el nombre de la cola y queue manager de destino ï?§ La transmisión es realizada vía canales. Los canales pueden ser levantados manual o automáticamente ï?§ Para levantar un canal automáticamente, la cola de transmisión debe estar asociada a un â??channel initiation queueâ?. Esta cola es monitoreada por un â??channel initiatorâ? ï?§ El channel initiator es un programa MQSeries que debe estar en ejecución. Cuando el channel initiator detecta un mensaje en la cola de transmisión, levanta un â??message channel agentâ? (MCA) ï?§ El MCA mueve el mensaje sobre la red a la otra máquina ï?§ El programa que procesa el mensaje de entrada puede ser levantado manual o automáticamente ï?§ Para levantar el programa automáticamente, se debe asociar una cola de iniciación y un proceso a la cola local, y un â??trigger monitorâ? debe estar en ejecución ï?§ Cuando el programa levanta automáticamente, el MCA coloca el mensaje entrante en la cola local y el mensaje de trigger en la cola de iniciación ï?§ La cola es monitoreada por un â??trigger monitorâ?. Este trigger monitor invoca el programa receptor ï?§ El programa receptor utiliza la API MQGET para recuperar el mensaje desde la cola local comunicacion entre mqm: ï?§ Para conectar dos queue managers, en cada sistema es necesario: ï?? Una definición de una cola remota, que represente una cola local en la máquina destino y que asocie una cola de transmisión (Q1 en sistema A y Q2 en sistema B) ï?? Una cola de transmisión que mantenga todos los mensajes destinados al sistema remoto hasta que el canal los transmita (QMB en sistema A y QMA en sistema B) ï?? Un canal sender que tome los mensajes desde la cola de transmisión y los transmita al otro sistema a través de la red (QMA.QMB en sistema A y QMB.QMA en sistema B) ï?§ Un canal receptor que reciba mensajes y los coloque en una cola local (QMB.QMA en sistema A y QMA.QMB en sistema B). El canal receptor debe ser levantar automáticamente por el queue manager (uso de Channel Auto Definition) ï?? Una cola local desde la cual el programa obtiene los mensajes (Q2 en sistema A y Q1 en sistema B)

Entradas relacionadas: