·
Un
sistema d mensajes es un método de comunicación entre componentes de SW o
aplicaciones.
·
Un
cliente puede enviar, recibir, crear y leer mensajes de otros clientes,
conectándose a un agente de mensajería.
·
No
es necesario que estén disponibles al mismo tiempo para comunicarse
·
El
que envía y recibe no necesitan saber nada uno del otro, solo el formato del
mensaje y el destino a usar.
·
Hoy en
día se tiene la necesidad de implementar arquitecturas de software que brinden
la integración de las plataformas heterogéneas de tecnología, dadas las
constantes necesidades de cambio, muy particulares a cada industria.
· Dicha
área de la integración de sistemas de cómputo se denomina Middleware, el cual
puede ser clasificado en tres grandes categorías:
v Remote Procedure Call – RPC
middleware. Permite hacer el llamado de procedimientos remotos
como si fuesen locales.
v Object Request Broker – ORP
middleware. Capaz de distribuir y compartir los objetos de una
aplicación a través de redes heterogéneas.
v Message-Oriented Middleware
– MOM middleware. Permite a
aplicaciones distribuidas comunicar e intercambiar información a través del
envío y recepción de mensajes. utiliza los mensajes como método de integración y
provee mecanismos para crear, manipular, almacenar y transmitir esos mensajes.
Estos sistemas permiten que las aplicaciones intercambien información en forma
de mensajes compuestos por cabeceras y dato.
·
Un
sistema de mensajes es un método de comunicación entre componentes de SW o
aplicaciones.
·
Un
cliente puede enviar, recibir, crear y leer mensajes de otros clientes,
conectándose a un agente de mensajería.
·
No
es necesario que estén disponibles al mismo tiempo para comunicarse
·
El
que envía y recibe no necesitan saber nada uno del otro, solo el formato del
mensaje y el destino a usar.
Dominios: Punto a punto:
·
Construido
alrededor del concepto de colas, remitentes y destinatarios.
·
Cada
mensaje está dirigido a una determinada cola
·
Los
destinatarios cogen los mensajes de las colas destinadas a recogerlos.
·
Cada
mensaje solo contiene un consumidor
·
El
destinatario notifica el procesamiento correcto del mensaje.
Dominio orientado a suscripción(Publish/Subscribe):
·
Es
un producto o aplicación orientado a suscripción
·
Los
clientes direccionan los mensajes a un topic(tema)
·
Editores
(Publisher) y Suscriptores (subscribers) son anónimos y pueden publicar o
suscribir determinados temas.
·
El
sistema cuida en distribuir los mensajes que llegan de múltiples emisores para
sus múltiples suscriptores
·
Cada
mensaje puede tener múltiples consumidores.Emisores y suscriptores tienen
dependencia temporal
Consumo del mensaje:
v Síncrona: Un suscriptor o receptor puede tomar el
mensaje llamando al método de recepción. Este método puede bloquearse hasta que
el mensaje llegue o se genere un timeout
v Asíncrona: Un cliente puede registrarse con un
consumidor un oyente de mensajes(message listener). Cuando un mensaje llega a
su destino, el proveedor entrega el mensaje llamando al método de recepción.
MSMQ
·
Es una
herramienta de Microsoft para realizar la administración de colas de mensajes.
La función principal de las colas de mensajes es la de permitir la comunicación
asincrónica entre procesos. Muchas veces, se tiene un proceso que invoca una
rutina que lleva mucho tiempo, pero que no interesa el resultado de la misma.
En la programación tradicional, el proceso llamador queda esperando a que el
invocado termine para poder continuar su ejecución, aunque no se vea afectado
por los resultados. La ventaja que tienen los mensajes asincrónicos es que el
llamador no sabe cuando se ejecuta el proceso y además puede continuar su
ejecución una vez enviado el mensaje.
·
Puede
enviar objetos (serializados) a la cola, donde permanecerán hasta que reciba.
Normalmente se utiliza para enviar mensajes u objetos entre aplicaciones de
forma disociada
·
No
tiene nada que ver con webservices, son dos cosas diferentes
Message Broker: Una implementación de MQ Broker
permite establecer un ESB (Enterprise Service Bus) que básicamente sirve de
middleware para la comunicación entre diferentes plataformas que no
necesariamente sean JAVA a través de un motor de intercambio de mensajes. MQ
Broker se encarga de la conversión y adaptación de estos mensajes para permitir
dicha interacción entre aplicaciones.
Message Queue: Message Queue es un middleware
orientado a mensajería que a nivel elemental es un servidor de colas, colas que
podrían considerarse como canales donde pueden viajar mensajes, canales donde
una aplicación X envía un mensaje a una cola y otra aplicación Z está pendiente
de esa cola en espera de nuevos mensajes. Cuando el mensaje llega a la cola, la
aplicación Z puede leerlo. Las implementaciones y posibilidades de un sistema
de mensajería permiten la comunicación entre plataformas distintas mediante el
intercambio de mensajes, en donde el servidor asegura la entrega de dichos
mensajes, pudiendo ser esta entrega de manera síncrona o asíncrona. Nuestros
servicios relacionados con la plataforma de IBM son el de desarrollo de
aplicaciones que envíen o reciban mensajes a traves de Websphere MQ, o
modificación de aplicaciones existentes para que puedan enviar o recibir
mensajes, además de servicios de administración y soporte de Websphere MQ para
tareas tales como administrar las colas del servidor, configuración de
seguridad y demás.