En el contexto de Message Queue Server, las colas son ubicaciones de almacenamiento temporal para diferentes tipos de mensajes. Las colas pueden ser creadas por:

  • Aplicaciones

  • Administradores

  • Message Queue Server

Las colas creadas por aplicaciones o administradores se denominan colas de aplicaciones. Las colas que crea Message Queue Server se conocen como colas de sistema.

Colas de aplicaciones

Message Queue Server incluye los siguientes tipos de colas de aplicaciones:

Colas públicas y privadas

Colas públicas

En un entorno de dominio, las colas públicas son colas que se publican en Servicios de dominio de Active Directory (AD DS) y, por lo tanto, se replican a través de un bosque. Sólo se replican las propiedades de estas colas, no las colas en sí ni su contenido. Cualquier equipo del bosque puede obtener acceso potencialmente a la información relativa a las colas públicas, siempre que el usuario cuente con los permisos necesarios para obtener acceso a los objetos de la cola aplicable. Generalmente, cualquier usuario del bosque con acceso a AD DS y el permiso Enviar mensaje para una cola pública determinada puede enviar mensajes a ella. Este permiso se concede de manera predeterminada cuando se crea la cola. Para leer los mensajes de una cola pública, debe disponer de los permisos Inspeccionar mensaje y Recibir mensaje para dicha cola.

En un entorno AD DS, la definición de colas públicas garantiza que las colas estén registradas en el servicio de directorio y que exista una copia de seguridad de su registro. Son persistentes y están disponibles para otras aplicaciones.

Colas privadas

Las colas privadas son colas que no se publican en AD DS. Sólo se muestran en el equipo local donde están incluidas. Las colas privadas tienen la ventaja de no tener la carga del servicio de directorio, lo que produce colas que:

  • Son más rápidas de crear.

  • No tienen latencia cuando se tiene acceso a ellas.

  • No tienen carga de replicación.

En un entorno de grupo de trabajo, sólo hay colas privadas disponibles.

Para que una aplicación de Message Queue Server del equipo local obtenga acceso a una cola privada, basta con que la aplicación conozca la ruta de acceso de la cola. En el caso de una aplicación de Message Queue Server de un equipo remoto, la aplicación requiere un nombre de formato directo o privado para obtener acceso a dicha cola. Para leer mensajes de la cola, la aplicación de Message Queue Server remota requiere el permiso Recibir mensaje para esa cola. De manera predeterminada, todos los usuarios tienen permisos para enviar mensajes a colas públicas y privadas.

Colas transaccionales y no transaccionales

Una cola transaccional es aquella que sólo contiene mensajes transaccionales, que son mensajes enviados dentro de una transacción. Los requisitos para enviar y recibir mensajes están basados en el tipo de cola que se usa (transaccional o no transaccional) y la ubicación de la cola (local o remota).

Envío de mensajes

Cuando se usan transacciones para enviar mensajes, los mensajes se pueden enviar a cualquier cola transaccional independientemente del lugar donde se ubique la cola, pero las colas transaccionales sólo pueden aceptar mensajes enviados en el contexto de una transacción. De forma similar, las colas no transaccionales sólo pueden aceptar mensajes enviados fuera del contexto de una transacción.

Recepción de mensajes

Puede recibir mensajes de una cola local o remota.

Subcolas

Permiten a las aplicaciones agrupar mensajes. Las subcolas resultan útiles en los siguientes escenarios:

  • Procesamiento de órdenes de trabajo. Si una aplicación procesa mensajes que contienen elementos de distintas órdenes de trabajo, puede usar las subcolas para agrupar los elementos de línea por orden de trabajo para que el procesamiento sea más eficaz.

  • Tratamiento de mensajes dudosos. Si una aplicación recibe un mensaje que no puede procesar en ese momento, puede moverlo a una subcola de errores para hacerlo más tarde.

Las subcolas se crean de forma implícita cuando se abren. En otras palabras, cuando se mueve un mensaje a una subcola, esta acción crea una subcola si no existe ninguna. Las subcolas se eliminan cuando están vacías y no tienen identificadores abiertos. Las aplicaciones no pueden enviar mensajes directamente a las subcolas. Sólo pueden mover mensajes a una subcola. Pueden recibir mensajes de las subcolas, moverlos entre una cola principal y su subcola o moverlos entre las subcolas de la misma cola principal. No pueden moverlos desde la subcola de una cola principal hacia la subcola de una cola principal diferente.

Por ejemplo, en la siguiente ilustración, los mensajes se pueden mover en ambas direcciones entre la subcola 1 (o subcola 2) y la carpeta Mensajes de la cola de la cola a. Los mensajes también se pueden mover entre la subcola 1 y la subcola 2. De igual forma, los mensajes se pueden mover en ambas direcciones entre la cola z y sus subcolas, la subcola 3 y la subcola 4.

Sin embargo, los mensajes no pueden moverse en ninguna dirección entre la cola a y la subcola 3 o la subcola 4, ni entre la cola z y la subcola 1 o la subcola 2. Del mismo modo, los mensajes no pueden moverse en ninguna dirección entre las subcolas de la cola a (subcola 1 o subcola 2) y las subcolas de la cola z (subcola 3 o subcola 4).

Subcolas

Las subcolas no tienen sus propias propiedades ni estado. Comparten las propiedades de la cola principal. Por ejemplo, una subcola no tiene:

  • Su propia Cuota

  • Su propia lista de control de acceso (ACL)

  • Su propio tipo transaccional

Las subcolas comparten la cuota de la cola principal y los mensajes de la subcola se cuentan para esa cuota.

Las subcolas no se pueden crear en colas del diario, otras colas de sistema ni otras subcolas.

Colas de administración

Las colas de administración son colas generadas por una aplicación. Se usan para almacenar mensajes de confirmación negativos y positivos generados por el sistema que crean Message Queue Server o las aplicaciones conectoras. Las especifica la aplicación que realizó el envío mediante programación en los mensajes originales. Cualquier cola no transaccional disponible puede especificarse como una cola de administración. Las colas de administración no contienen mensajes administrativos, que se almacenan en colas privadas internas.

Los mensajes de confirmación generados por el sistema que se devuelven a estas colas pueden indicar si un mensaje llegó a su cola de destino, si se recuperó de la cola de destino o ambos. Cada mensaje de confirmación contiene información que describe qué activó la confirmación y a qué mensaje se refiere la confirmación. Cuando se solicitan mensajes de confirmación, la aplicación que realizó el envío debe especificar la cola que se va a usar como cola de administración y el nivel de confirmación del mensaje. Normalmente, una cola de administración es una cola local, para que la aplicación que realizó el envío pueda leer los mensajes de confirmación de forma local.

Colas de respuesta

Como en el caso de las colas de administración, las colas de respuesta son colas generadas por una aplicación. Se usan para almacenar mensajes de respuesta generados por una aplicación que suelen ser devueltos por una aplicación que lee mensajes de una cola. La aplicación que realizó el envío especifica las colas de respuesta mediante programación cuando se envía un mensaje. Cualquier cola disponible puede especificarse como una cola de respuesta. Los mensajes de respuesta no son iguales que los mensajes de respuesta administrativos, que se almacenan en una cola privada interna.

Los mensajes de respuesta devueltos a estas colas deben ser legibles para la aplicación que devuelve los mensajes de respuesta y la aplicación que lee los mensajes de respuesta. Message Queue Server no tiene ningún control sobre la información que se envía en los mensajes de respuesta. Cuando se solicitan mensajes de respuesta, la aplicación que realizó el envío debe especificar las colas que desea usar como colas de respuesta. Normalmente, las colas de respuesta son colas locales, para que la aplicación que realizó el envío pueda leer los mensajes de respuesta de forma local.

Cuando se necesita tanto una cola de respuesta como una cola de administración, se puede combinar su funcionalidad en una única cola. Sin embargo, como todas las colas de administración deben ser no transaccionales, esta cola sólo aceptará mensajes no transaccionales.

Colas de informes

Las colas de informes son colas generadas por una aplicación que se usan para almacenar mensajes de informes generados por Message Queue Server o aplicaciones conectoras cuando la aplicación que realizó el envío solicita seguimiento. Los mensajes de informes indican la ruta que tomó un mensaje hasta su destino en un equipo remoto o la ruta que tomó un mensaje de prueba hasta la cola de prueba de un equipo remoto. Sólo puede haber una cola de informes para cada equipo.

Todas las colas de informes tienen la siguiente etiqueta e identificador de tipo de cola:

  • Etiqueta: Cola MQReport

  • Identificador de tipo de cola:

    {55EE8F32-CCE9-11CF-B108-0020AFD61CE9}

El administrador de Message Queue Server suele crear colas de informes mediante Usuarios y equipos de Active Directory. Sin embargo, una aplicación también puede generarlas si se especifican la etiqueta y el identificador de tipo de cola correctos cuando se crea la cola. Message Queue Server usa la etiqueta y el identificador de tipo de cola para encontrar y abrir la cola adecuada al enviar mensajes de informes.

Colas de sistema

Message Queue Server crea colas de sistema. Las aplicaciones pueden leer los mensajes en las colas de sistema, pero no pueden dirigirles mensajes. Message Queue Server proporciona distintos tipos de colas de sistema, entre los que se incluyen:

  • Colas del diario, que contienen copias de todos los mensajes quitados de una cola. Los diarios del equipo contienen copias de todos los mensajes enviados desde un equipo.

  • Las colas internas privadas, que se usan como colas temporales para almacenar y reenviar mensajes en tránsito a una cola de destino. Estas colas no se publican en AD DS. Las colas de salida son colas privadas internas locales generadas automáticamente para almacenar los mensajes enviados a las colas remotas.

  • Las colas de mensajes con problemas de entrega, que contienen mensajes que no se pueden entregar. Message Queue Server proporciona una cola transaccional de mensajes con problemas de entrega y una cola no transaccional de mensajes con problemas de entrega.

  • Colas del conector, que se usan para la mensajería entre plataformas.

  • Colas de salida, que son colas internas locales que se usan para almacenar los mensajes enviados a las colas remotas. Los mensajes pueden almacenarse en colas de salida en condiciones sin conexión y, a continuación, enviarse a colas de destino de equipos remotos cuando se restablezca la conectividad. Estas colas se generan automáticamente y no pueden crearse ni eliminarse de manera manual.

Realice los siguientes procedimientos según sea necesario para administrar colas:


Tabla de contenido