PDF de programación - Introducción a MQ y conceptos de mensajería - Arquitectura de Proyectos de IT

Imágen de pdf Introducción a MQ y conceptos de mensajería - Arquitectura de Proyectos de IT

Introducción a MQ y conceptos de mensajería - Arquitectura de Proyectos de ITgráfica de visualizaciones

Actualizado el 21 de Marzo del 2018 (Publicado el 20 de Octubre del 2017)
1.823 visualizaciones desde el 20 de Octubre del 2017
140,1 KB
14 paginas
Creado hace 15a (24/08/2008)
Arquitectura de Proyectos de IT

Introducción a MQ y conceptos de

mensajería











Apunte:







Autores:

Patricio Echagüe

[email protected]

Ing. Gastón Escobar
[email protected]



Versión: 0.1





Octubre, 2005

1























Índice

1.
2.
3.
4.
5.

5.1.
5.2.
5.3.
5.4.
5.5.

Índice ............................................................................................................................................... 2
Objetivo .......................................................................................................................... 3
Introducción.................................................................................................................... 3
Mensajes ........................................................................................................................ 3
Propiedades Básicas de los mensajes y colas .............................................................. 4
Conceptos de Mensajería .............................................................................................. 5
Bajo acoplamiento ..................................................................................................... 5
Tipos de mensaje....................................................................................................... 5
Tipos de mensajería .................................................................................................. 6
Modelos de mensajería.............................................................................................. 6
Patrones de Mensajería............................................................................................. 7
Arquitectura .................................................................................................................... 8
Comunicación............................................................................................................... 10
Objetos administrados por el Queue Manager ............................................................ 10
Cola Local .................................................................................................................... 11
Cola Remota ................................................................................................................ 11
Otros Productos ........................................................................................................... 11
11.1. Microsoft Message Queuing(MSMQ) ...................................................................... 11
11.2. Oracle Advanced Queuing(AQ) ............................................................................... 11
Anexos........................................................................................................................................... 12
Cómo Funciona MQ. .................................................................................................... 12
Pedido y respuesta. ..................................................................................................... 12
Referencias.................................................................................................................................... 14

6.
7.
8.
9.
10.
11.

12.
13.



2

1. Objetivo


El objetivo de este documento es introducir al lector al concepto de Colas de mensajes a la vez
de explicar los conceptos para importantes de esta tecnología. Para cumplir dicho objetivo
hemos optado por utilizar un producto en particular, MQ Series de IBM.

2.

Introducción


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.



3. Mensajes


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.





3

4.

Propiedades Básicas de los mensajes y colas

4.1.1. Persistencia
El diseño de una aplicación determina si a la hora de enviar mensajes, estos deben
llegar obligatoriamente a destino o si pueden ser descartados si no llegan a tiempo, por
ejemplo.
En el envío de mensajes persistentes, estos son grabados en un Log a fin de evitar la
perdida de información en el caso de una falla en el sistema, falla de alimentación o
cualquier otra eventualidad.
Un mensaje no persistente, en caso de una falla, no pueden ser recuperados.

4.1.2. Prioridad
Es la prioridad que tendrá el mensaje al momento de ser entregado a la aplicación que
toma el mensaje de la cola. Es decir, mientras más alta sea la prioridad, será puesto más
adelante en la cola al momento de ser enviado.
La prioridad puede estar entre 0 (prioridad más baja) y el 9 (prioridad más alta).
Esta propiedad se puede setear en el mensaje, de todas formas también se puede
setear una propiedad por defecto en la cola.


4.1.3. Expiración
Cuando un mensaje es enviado a la cola, el cliente puede especificar un valor para el
“time-to-live”. El motor de colas no va a entregar un mensaje cuyo “time-to-live” ha
expirado. Los mensajes que se encuentran en una cola van a ser borrados cuando su
tiempo de expiración haya pasado.

Nota: En caso de que nos encontremos dentro de un Application Server utilizando JMS,
no es recomendado, en casos generales, setear este valor desde la aplicación, sino
hacerlo desde el Application Server.


4.1.4. Backout threshold
La cantidad máxima de veces que un mensaje puede intentar ser procesado. Si este
límite es alcanzado, el mensaje es reencolado en la backout queue especificada en la
propiedad Backout Requeue name.

MQ guarda un registro de la cantidad de veces que se ha hecho un rollback de un
mensaje. Esta situación se produce cuando un mensaje es tomado por una aplicación, la
misma no lo puede procesar y lo vuelve a poner en la cola de dónde lo había tomado (es
decir, se produce un rollback). De esta forma, una vez alcanzado el límite configurable,
el mensaje es reencolado en la cola de Backout. En caso de que, por alguna razón, este
encolamiento falle, el mensaje es enviado a la dead-letter queue o bien, eliminado.



4.1.5. Backout Requeue name

El nombre de la cola dónde los mensajes serían reencolados en caso de que el límite
marcado por la propiedad backout threshold sea superado




4










5.

Conceptos de Mensajería

5.1. Bajo acoplamiento
Uno de los principales beneficios de los sistemas de mensajería es el bajo acoplamiento. A
continuación se discuten dos aspectos.

5.1.1. 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.



5.1.2. 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.

5.2. 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.

5

















5.3. Tipos de mensajería

El tipo de mensajería describe el estilo de interacción entre el emisor y el receptor.

5.3.1. Mensajería Sincrónica
Este enfoque implica procesos acoplados, en el mismo es necesario que ambos, emisor
y receptor, se encuentren operando y conectados directamente para que el intercambio
de mensajes pueda ocurrir.

5.3.2. Mensajería asincrónica
El cliente que envía el mensaje continúa procesando sin esperar confirmación. Delega
en el Queue Manager la responsabilidad de la correc
  • Links de descarga
http://lwp-l.com/pdf7240

Comentarios de: Introducción a MQ y conceptos de mensajería - Arquitectura de Proyectos de IT (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad