SSYSPE

Platform to share knowledge, news, discussions and jobs about software, systems and IT fields related
* Identificarse    * Registrarse

Skip to Content

 

IBM WebSphere MQ: Parte 1

por paul.zela

IBM WebSphere MQ o también conocido MQSeries, es una software de la familia de IBM cuyos componentes se utilizan para unir otras aplicaciones de software para que se puedan conectar entre sí. Este tipo de aplicaciones es a menudo conocido como software de integración empresarial o middleware.

Adjunto:
UsoIBMMQSeries.jpg
UsoIBMMQSeries.jpg [ 39.42 KB | Visto 197 veces ]


Existen dos modelos de comunicación: El síncrono y el asíncrono.

El modelo síncrono consiste en: En la Figura 1, el programa A prepara un mensaje y lo pone en la cola 1. El programa B recibe el mensaje de la cola 1 y la procesa. Tanto el Programa A y Programa B utilizan una API para poner/obtener los mensajes de una cola. La API de MQSeries es conocida como MQI ( Message Queue Interface ). Cuando el programa A coloca un mensaje en la cola 1 y el programa B no se está ejecutando, la cola almacena el mensaje de forma segura hasta que el programa B se inicie y esté listo para recibir el mensaje. Del mismo modo, a la vez que que el programa B recibe el mensaje de la cola 1, el programa A ya no podría estar en ejecución. Utilizando este modelo, no hay ningún requisito para que dos programas que se comunican entre sí deban estar ejecutándose al mismo tiempo.
Adjunto:
modelosincrono.jpg
modelosincrono.jpg [ 29.13 KB | Visto 127 veces ]

Figura 1.


El modelo asíncrono consiste en: En la figura 2, el programa A pone mensajes en la cola 1 para que el programa B los procese, pero es el Programa C, que actúa de forma asíncrona para el programa A, el cual obtiene las respuestas de la cola de 2 y los procesa. El modelo asíncrono es natural para WebSphere MQ. El programa A puede seguir poniendo los mensajes en la cola 1 y no está bloqueado por tener que esperar a una respuesta a cada mensaje. El programa A puede seguir poniendo mensajes en la cola 1, incluso si el programa B falla. Si es así, la cola 1 almacena los mensajes de manera segura hasta que el programa B se reinicia.
Adjunto:
modeloasincrono.jpg
modeloasincrono.jpg [ 28.22 KB | Visto 128 veces ]

Figura 2.

Los objetos más importantes que se pueden configurar en WebSphere MQ son las queues, channels, topics y el propio queue manager.

Queue Manager: El gestor de colas se encarga de controlar todos los recursos que se encuentran bajo su control es decir controla el almacenamiento y flujo de mensajes.

Las colas se utilizan ya sea para almacenar los mensajes que se envían por las aplicaciones o son punteros a otras colas o tópicos. Hay diferentes tipos de colas y algunos para usos especiales:

    Queue Local: La cola local es el único lugar donde se almacenan físicamente los mensajes.

    Alias Queue: El alias de una cola suele ser un puntero o acceso directo a una cola local. El uso del alias es una manera de permitir a diferentes aplicaciones usar distintos nombres para la misma cola fisica. Una alias también puede ser utilizado como un puntero a un topico para la publicación/suscripción.

    Remote Queue: Una cola remota es otro tipo de puntero. En este caso, una cola remota describe una cola local en otro gestor de colas. Cuando una aplicación abre una cola remota, el gestor de colas a la cual está conectado la aplicación asegura que los mensajes queden almacenados localmente para el envío a otro gestor de colas. En este tipo de colas, las aplicaciones no puede leer los mensajes.

    Model Queue: Una cola modelo es un modelo de plantilla que puede ser utilizada por una aplicación para crear dinámicamente una cola local. Estas plantillas se utilizan a menudo para crear una cola única para replicar los mensajes y luego la cola es eliminada automáticamente cuando la aplicación se desconecta.

    Dynamic queue: Una cola dinámica es creada por el proceso de inicio de una cola modelo. Ellos son colas locales reales, pero que no se pueden crear de forma explícita a través de las interfaces de administración.

Existen otros tipo de colas para propósitos especiales:

    Transmission queue: Una cola de transmisión es una cola local con el atributo de uso configurado (XMITQ). Es un punto de almacen para los mensajes que se destinan a un gestor remoto de colas. Típicamente, hay una cola de transmisión para cada gestor remoto de colas al que el gestor de colas local podría conectar directamente. Si el destino no está disponible, los mensajes se acumulan en la cola de transmisión hasta que la conexión pueda volver a completarse con éxito.

    Initiation queue: Una cola de inicio es una cola local en el cual el gestor de colas escribe un mensaje de activación cuando se cumplen ciertas condiciones en otra cola local. Por ejemplo, esto se hace cuando se pone un mensaje en una cola local o en una cola de transmisión vacía. Tal mensaje de activación es transparente para el programa, pero es un mecanismo poderoso para comenzar la ejecución de canales sólo cuando hay mensajes para ser procesados.

    Dead-letter queue: Una cola de muertos (DLQ) se utiliza para situaciones en las que un gestor de colas no puede entregar un mensaje a través de un canal. He aquí algunos motivos:
    * La cola de destino está lleno.
    * La cola de destino no existe.
    * Se han inhibido poner mensajes en la cola de destino .
    * El remitente no está autorizado a utilizar la cola de destino.
    * El mensaje es demasiado grande.
Adjuntos
 
 
Archives
- Enero 2015
+ Diciembre 2014
+ Noviembre 2014
+ Octubre 2014

Friends
  • Friends Online
    No Friends Online