Introducción A MQSeries
Enviado por sdanielcc • 30 de Septiembre de 2014 • 3.940 Palabras (16 Páginas) • 244 Visitas
WebSphere MQSeries
WebSphere MQSeries o simplemente MQSeries es un sistema de comunicaciones que proporciona una entrega de datos segura, asíncrona y una sola vez, a través de una amplia gama de plataformas de hardware y software.
Estas características hacen que MQSeries sea la infraestructura ideal para las comunicaciones entre aplicaciones y lo convierten en una solución apropiada tanto si las aplicaciones se ejecutan en la misma máquina como si se ejecutan en máquinas diferentes que están separadas por una o más redes.
MQSeries da soporte a todos los protocolos de comunicaciones más importantes e incluso proporciona funciones de direccionamiento entre redes que utilizan protocolos diferentes. Los productos de puente y pasarela de MQSeries permiten un fácil acceso (con muy poca o sin ninguna programación) a muchos sistemas y entornos de aplicaciones actuales, por ejemplo, Lotus Notes, navegadores de la Web, Java, C, C++ y muchos más.
MQSeries ofrece posibilidades de entrega segura de datos que quedan reflejadas en las numerosas funciones que se han incorporado para que no se pierdan los datos a causa de anomalías en la infraestructura subyacente del sistema o de la red. Con esta posibilidad de entrega segura de datos, MQSeries se convierte en la red troncal de los sistemas críticos de comunicaciones, a la que se puede confiar la entrega de datos de gran valor. También contiene opciones que le permiten seleccionar una calidad de servicio menor, cuando se necesite. Por ejemplo, puede darse el caso de que prefiera una entrega rápida a una entrega tan segura.
El soporte de procesos asíncronos en MQSeries significa que el intercambio de datos entre las aplicaciones emisora y receptora es independiente del tiempo. De este modo las aplicaciones emisora y receptora se pueden desacoplar, y la aplicación emisora puede continuar su proceso sin tener que esperar a que la aplicación receptora indique que ha recibido los datos. De hecho, no es necesario que la aplicación de destino esté ejecutándose cuando se envían los datos. Del mismo modo, no es necesario que toda la vía de acceso de la red entre la aplicación emisora y la receptora esté disponible cuando los datos se están transfiriendo.
La entrega de datos una sola vez es una cuestión importante, sobretodo para aplicaciones financieras y de la empresa, en las que precisamente lo que no se desea es que se dupliquen las peticiones de transferencias de grandes cantidades de dinero de una cuenta a otra.
Los principales objetos de MQseries son:
- Gestor de colas (Queue Manager)
- Mensajes (Messages)
- Colas (Queues)
- Canales (Channels)
MQSeries y gestión de colas de mensajes
MQSeries permiten a las aplicaciones utilizar la gestión de colas de mensajes para participar en el proceso dirigido por el flujo de mensajes. Con el proceso dirigido por mensajes, las aplicaciones se pueden comunicar dentro de una misma plataforma o entre distintas plataformas utilizando los productos de software de gestión de colas de mensajes adecuados. Por ejemplo, las aplicaciones OS/390 y OS/400 pueden comunicarse a través de MQSeries para OS/390 y MQSeries para AS/400 respectivamente. Con los productos MQSeries, todas las aplicaciones utilizan los mismos tipos de mensajes y los protocolos de comunicaciones permanecen ocultos para las aplicaciones.
La MQI – una interfaz común de programación de aplicaciones
Los productos MQSeries implementan una interfaz común de programación de aplicaciones, la interfaz de colas de mensajes (MQI), que se utiliza en todas las plataformas en las que se ejecutan las aplicaciones. La funciones o llamadas efectuadas por las aplicaciones y los mensajes que éstas intercambian son comunes. Si lo comparamos con los métodos tradicionales, veremos que se facilita en gran medida la tarea de desarrollar y mantener aplicaciones. También facilita la migración de aplicaciones de gestión de colas de mensajes de una plataforma a otra.
La tabla siguiente muestra las llamadas de MQI.
Tabla 1. Llamadas de MQI
Nombre de llamada Descripción Plataformas
MQBEGIN Empezar una unidad de trabajo que coordinará el Queue Manager (gestor de colas). AIX, HP-UX, OS/2 Warp, Sun
Solaris y Windows
MQCONN Conectarse a un Queue Manager Todas las plataformas
MQCONNX Conectarse a un Queue Manager y especificar algunas opciones especiales AIX, HP-UX, OS/2 Warp, Sun
Solaris y Windows
MQDISC Desconectarse de un Queue Manager Todas las plataformas
MQOPEN Abrir un objeto Todas las plataformas
MQCLOSE Cerrar un objeto Todas las plataformas
MQPUT Colocar un mensaje (la cola ya está abierta) Todas las plataformas
MQPUT1 Colocar un mensaje Todas las plataformas
MQGET Obtener un mensaje Todas las plataformas
MQCMIT Confirmar cambios OS/2 Warp, OS/390, Windows
y sistemas UNIX
MQBACK Restituir cambios OS/2 Warp, OS/390, Windows
y sistemas UNIX
MQINQ Consultar acerca de los atributos de un objeto Todas las plataformas
MQSET Establecer los atributos de un objeto Todas las plataformas
Aplicaciones independientes del tiempo
Con las colas de mensajes, el intercambio de mensajes entre los programas emisor y receptor es independiente en el tiempo. Esto significa que las aplicaciones emisora y receptora están separadas para que la emisora pueda seguir procesando sin tener que esperar a que el receptor acuse recibo del mensaje. Es posible que la aplicación receptora esté ocupada cuando se envía el mensaje. En realidad, no es necesario que la aplicación receptora esté activa. MQSeries mantiene el mensaje en la cola hasta que pueda procesarse.
En la figura XXX se representa a dos programas, donde A es el programa emisor de mensajes a la cola “Queue 1”, en donde son almacenados los mensajes hasta que el programa B actúe como receptor o recuperador de mensajes de esa cola, tarea que realiza completamente en forma independiente al programa A.
Proceso dirigido por mensajes
El proceso dirigido por mensajes es un estilo de diseño de aplicaciones. Con este estilo, la aplicación se divide en varios bloques funcionales distintos e independientes y cada bloque tiene parámetros de entrada y salida bien definidos.
...