Utilice el nodo Secuencia para añadir un número de secuencia a uno o más grupos de mensajes de entrada.
Este tema contiene las secciones siguientes:
El nodo Secuencia permite recibir grupos de mensajes de un origen de un origen de entrada y mantener el orden en que llegan los mensajes en cada grupo.
Utilice un nodo Secuencia para generar un número de secuencia que aumente de forma monotónica para cada grupo de secuencia. Para cada mensaje del grupo que llega al nodo Secuencia, el número de secuencia del grupo aumenta y se almacena con el mensaje en una ubicación especificada en la propiedad del nodo Vía de acceso para almacenar el número de secuencia (por ejemplo, Entorno local, cabecera MQRFH2, cuerpo del mensaje).
Las secuencias sólo se aplican a los mensajes del mismo grupo de secuencia. Puede utilizar las propiedades del nodo Secuencia para organizar mensajes en grupos de acuerdo con una condición especificada; por ejemplo, la agrupación de todos los mensajes con el mismo valor en un campo de número de cliente en el mensaje. Si no se especifica ningún grupo de secuencia, se utiliza un solo grupo predeterminado para todos los mensajes.
Un nodo Secuencia puede recibir entradas de varios nodos de entrada en el flujo de mensajes o de nodos de entrada que tienen instancias adicionales. El nodo Secuencia puede procesar varios grupos de secuencia en paralelo, pero sólo procesa una solicitud de números de secuencia cada vez para el mismo grupo de secuencia.
El nodo Secuencia asigna un número de secuencia a cada mensaje del grupo de secuencia y no se asigna el número de secuencia siguiente del grupo hasta que se haya terminado de procesar el mensaje actual del grupo (confirmándolo o restituyéndolo). Sólo una hebra a la vez puede procesar mensajes en el mismo grupo de secuencia en sentido descendente desde el nodo Secuencia, lo cual garantiza que se mantiene la secuenciación para el grupo cuando hay diversas hebras en el flujo de mensajes.
Cuando el nodo Secuencia recibe mensajes de diversas hebras, se preserva el orden en que los mensajes llegan al nodo Secuencia. Sin embargo, el orden en que los mensajes llegan al nodo Secuencia puede ser distinto al orden en que se toman desde el transporte en el nodo de entrada. Esta situación se puede producir porque a los mensajes de una hebra los adelanten otros mensajes de otras hebras entre el nodo de entrada y el nodo Secuencia.
Cada grupo de secuencia se puede asociar únicamente a un nodo Secuencia. Varios nodos Secuencia pueden tener un grupo de secuencia con el mismo nombre, pero cada uno de esos grupos de secuencia se trata como un grupo aparte. Se utiliza la combinación del nombre del grupo de ejecución, el nombre del flujo de mensajes, el nombre del nodo y el nombre del grupo de secuencia para diferenciar los grupos de secuencia.
Por ejemplo, podría tener un flujo de mensajes denominado flow1 que contenga un nodo Secuencia denominado node1, que se despliega en un grupo de ejecución denominado eg1. Se envía un mensaje al mismo utilizando un grupo de secuencia denominado group1. El resultado es eg1/flow1/node1/group1. El mismo flujo de mensajes en un grupo de ejecución distinto, por ejemplo eg2, daría como resultado eg2/flow1/node1/group1.
El nodo Secuencia se encuentra en la bandeja Direccionamiento de la paleta y está representado en el WebSphere Message Broker Toolkit mediante el siguiente icono:
Puede ver información sobre los ejemplos sólo cuando utilice el Information Center que está integrado en WebSphere Message Broker Toolkit o el Information Center en línea. Puede ejecutar ejemplos sólo cuando utilice el Information Center que está integrado en WebSphere Message Broker Toolkit.
Cuando haya colocado una instancia del nodo Secuencia en un flujo de mensajes, podrá configurarlo; consulte el tema Configurar un nodo de flujo de mensajes. Las propiedades del nodo se visualizan en la vista Propiedades.
Todas las propiedades obligatorias que no tienen un valor predeterminado aparecen con un asterisco.
Configure el nodo Secuencia:
Cuando el nodo Secuencia propaga el primer mensaje de un grupo de secuencia específico, el número de secuencia inicial especificado se utiliza para asignar el primer número de secuencia; los mensajes sucesivos contienen un número de secuencia que aumenta de forma monotónica. Este valor se sobrescribe con la variable LocalEnvironment.Sequence.StartOfSequenceNumber.
Si la expresión XPath es válida pero no está presente en el mensaje, se evalúa como False y se asigna un número de secuencia al siguiente mensaje del grupo de secuencia. Cuando el predicado se evalúa a True, el mensaje pasa a ser el último de la secuencia y no se asignan más mensajes a la secuencia para ese grupo de secuencia.
Si la expresión XPath no es válida, da un error y se retrotrae el mensaje.
Los terminales del nodo Secuencia se describen en la tabla siguiente.
Terminal | Descripción |
---|---|
De entrada) | El terminal de entrada a través del cual llega al nodo el mensaje ensamblado de entrada. |
Anomalía | El terminal de salida al que se direcciona el mensaje si se produce un error. Este valor incluye anomalías provocadas por el proceso de reintento. |
De salida | El terminal de salida al cual se propaga de forma predeterminada el mensaje de salida. |
Las tablas siguientes describen las propiedades de nodo. La columna con la cabecera O indica si la propiedad es obligatoria (marcada con un asterisco si tiene que entrar un valor cuando no hay definido ningún valor predeterminado); la columna con la cabecera C indica si la propiedad es configurable (puede cambiar el valor cuando añade el flujo de mensajes al archivo BAR para desplegarlo).
En la tabla siguiente se describen las propiedades de descripción del nodo Secuencia.
Propiedad | O | C | Valor predeterminado | Descripción |
---|---|---|---|---|
Nombre de nodo | No | No | Secuencia | El nombre del nodo. |
Descripción corta | No | No | Una descripción breve del nodo. | |
Descripción larga | No | No | Texto que describe la finalidad del nodo en el flujo de mensajes. |
En la tabla siguiente se describen las propiedades básicas del nodo Secuencia.
Propiedad | O | C | Valor predeterminado | Descripción |
---|---|---|---|---|
Vía de acceso para almacenar el número de secuencia | No | No |
|
Una expresión XPath que especifica la ubicación en la que se debe guardar el número de secuencia del mensaje. |
Vía de acceso de identificador de grupo de secuencia | No | No | No se ha establecido | Una expresión XPath que apunta a la ubicación del identificador de grupo de secuencia. Los mensajes que tienen el mismo identificador de grupo se consideran parte del mismo grupo de secuencia. Esta propiedad funciona del mismo modo que la propiedad Vía de acceso de correlación en el nodo Collector. |
Definición de inicio de secuencia | Sí | No | 0 | Especifica el primer número de secuencia de cada grupo. Los valores válidos son los enteros positivos o negativos. El valor predeterminado es 0. |
Definición de fin de secuencia | Sí | No | Automática | Especifica cuándo se ha completado cada grupo de secuencia. Los valores válidos son:
|
En la tabla siguiente se describen las propiedades avanzadas del nodo Secuencia.
Propiedad | O | C | Valor predeterminado | Descripción |
---|---|---|---|---|
Modalidad de persistencia | Sí | No | No persistente | Especifica si se va a almacenar el estado del grupo de secuencia de forma persistente. Las opciones válidas son:
|
Propiedad | O | C | Valor predeterminado | Descripción |
---|---|---|---|---|
Sucesos | No | No | Ninguno | Los sucesos que se han definido para el nodo se visualizan en este separador. De forma predeterminada, no se define ningún suceso de supervisión en ningún nodo en un flujo de mensajes. Utilice Añadir, Editar y
Suprimir para crear, cambiar o suprimir sucesos de supervisión para el nodo; consulte Configuración de orígenes de sucesos de supervisión utilizando propiedades de supervisión para obtener detalles. Puede habilitar e inhabilitar sucesos que se muestran aquí seleccionando o deseleccionando el recuadro Habilitado. |