A continuación se presenta algunas definiciones sobre mensajerías:
Un sistema de mensajería permite la comunicación entre aplicaciones a través de distintas
redes, o dentro de un mismo sistema. MQ brinda una API para que los programas clientes
reciban y envíen mensajes desde y hacia las colas (queues) sin poseer una conexión privada y
dedicada para ellos. Es decir, un sistema de mensajería permite la comunicación entre
aplicaciones de forma indirecta. Esto se logra mediante el envío de mensajes a un administrador
de mensajes, al cual están asociadas las aplicaciones, y es este último quien se encarga de
administrarlos y distribuirlos según diversas configuraciones.
El programador no especifica una aplicación de destino a la hora de enviar mensajes, sino que
especifica el nombre de una cola.
Una aplicación puede tener una o mas colas de entrada y una o diversas colas de salida.
El Arquitecto no debe preocuparse acerca de la tecnología existente en la aplicación destino, o si
la aplicación destino no se encuentra disponible (en el caso de los mensajes asincrónicos), sino
que el motor de colas se encarga de reenviar el mensaje si la misma se encuentra detenida o
bien de iniciarla dependiendo del caso.
Un mensaje consiste de dos partes:
• Data (información) que es enviada de una aplicación a otra.
• Header (cabecera) del mensaje o descriptor. Contiene información de control.
En el Header se especifica el ID del mensaje, tipo, prioridad, tiempo de expiración y el
nombre de la cola para la respuesta. El tamaño del mensaje puede tener un máximo de 4
MB o 100 MB dependiendo de la versión de MQ.
Conceptos de Mensajería
Bajo acoplamiento
Uno de los principales beneficios de los sistemas de mensajería es el bajo acoplamiento. A
continuación se discuten dos aspectos.
Acoplamiento de Procesos
El bajo acoplamiento a nivel de procesos se debe a que el proceso emisor no debe
preocuparse del estado del receptor, ya que el maganer de colas es quien recibe el
mensaje y se encarga de enviárselo al receptor tan pronto como este esté nuevamente
en línea o bien sea consultado por este último. A modo de comparación, se podría
imaginar al Queue Manager como un servidor de correros que retiene los mismos hasta
que sean consultados/extraídos por los cliejntes.
Acoplamiento de Aplicaciones
Las aplicaciones no deben preocuparse de adaptar su forma de comunicación según la
interfaz del receptor del mensaje, sino que debe hacerlo adaptándose al manager de
colas. Estos últimos suelen tener estándares abiertos para permitir la conectividad.
Este enfoque permite que los clientes se focalicen en el formato del mensaje mas que
por el formato de la interfaz destino.
Tipos de mensaje
A continuación se mencionan los cuatro tipos de mensajes soportados por MQ:
• Datagram: El mensaje no espera respuesta
• Request: El mensaje espera respuesta
• Reply: Una respuesta a un Request
• Report: Mensaje que describe un evento como por Ej. un error en el envío.
Modelos de mensajería
Esta clasificación ocurre para mensajes de tipos asincrónicos mencionados
y describe la cardinalidad entre el par emisor-receptor.
Punto a Punto
En este modelo, los mensajes son enviados hacia un destino específico, por lo general,
el nombre de una cola, donde son extraídos por la aplicación. Es decir, hay un mapeo
uno a uno entre el emisor y el receptor. La cola retiene todos los mensajes hasta que
estos son extraídos o bien expiran por tiempo. Este modelo posee las siguientes
características:
• Cada mensaje tiene un solo consumidor.
• El emisor y receptor no tienen dependencia de tiempo. El receptor puede
obtener el mensaje independientemente si este estaba ejecutando cuando el
emisor envió el mensaje.
• El receptor notifica cuando el mensaje fue consumido exitosamente
(acknowledge).
Para más información se adjunta el siguiente enlace :http://apit.wdfiles.com/local--files/start/03_apit_intro_mensajeria.pdf






