Utilice el nodo FlowOrder para controlar el orden en el que un flujo de mensajes procesa un mensaje.
Este tema contiene las secciones siguientes:
El nodo FlowOrder propaga el mensaje de entrada al primer terminal de salida y la secuencia de nodos conectada a dicho terminal procesa el mensaje. Cuando se completa el proceso de ese mensaje, el control vuelve al nodo FlowOrder. Si el proceso del mensaje termina correctamente, el nodo FlowOrder propaga el mensaje de entrada al segundo terminal de salida y la secuencia de nodos conectada a dicho terminal procesa el mensaje.
El mensaje que se propaga a través de la segunda terminal de salida es el mensaje de entrada. No se modifica de manera alguna por el nodo FlowOrder. Si un nodo de cálculo conectado a la primera terminal modifica a InputRoot, por ejemplo mediante la utilización de referencias, estas modificaciones se hacen visibles en el mensaje que se propaga a la Segunda terminal.
Puede incluir este nodo en un flujo de mensajes en cualquier punto en el que el orden de ejecución de los siguientes nodos sea importante.
Si conecta varios nodos al primer terminal de salida o al segundo terminal de salida o a ambos, el orden en el que se procesarán las múltiples conexiones en cada terminal será al azar e imprevisible. No obstante, el mensaje se propaga a todos los nodos de destino conectados al primer terminal de salida, y todos deben terminar correctamente para que el mensaje se propague a cualquier nodo conectado al segundo terminal de salida.
El rendimiento del flujo de mensajes puede beneficiarse de la inclusión del nodo FlowOrder en una situación en la que una secuencia de proceso requerida para un mensaje es significativamente más corta que otra secuencia de proceso. Si conecta la secuencia más corta al primer terminal, cualquier anomalía se identifica rápidamente e impide la ejecución de la segunda secuencia de proceso más larga.
El nodo FlowOrder se encuentra en la bandeja Construcción de la paleta y está representado en el WebSphere Message Broker Toolkit por el siguiente icono:
Como ejemplo de utilización de este nodo, supongamos que la empresa recibe pedidos de los clientes utilizando Internet. Cuando se recibe el pedido, lo procesan los nodos conectados al primer terminal de un nodo FlowOrder para reducir el nivel de existencias en la base de datos y generar una factura. Se realiza una comprobación para ver si el cliente ha indicado que sus detalles se pueden enviar a otros proveedores. Si el cliente ha indicado que no desea que se divulgue esta información, esta comprobación falla y no se produce ningún proceso adicional. Si el cliente sí desea que comparta sus detalles con otras empresas (es decir, la comprobación es satisfactoria), el mensaje de entrada se propaga al segundo terminal para que los detalles del cliente se puedan añadir a la lista de correo.
El nodo FlowOrder no tiene propiedades configurables que afectan al funcionamiento. Éste se determina conectando los terminales de salida primero y segundo a nodos adicionales en el flujo de mensajes.
El mensaje que se propaga a través del segundo terminal es idéntico al que se propaga a través del primer terminal. Este nodo hace caso omiso de los cambios que haya introducido como resultado de la primera fase de proceso.
Si la primera fase de proceso falla, el nodo FlowOrder no vuelve a tomar el control y no propaga el mensaje a través del segundo terminal.
Cuando haya colocado una instancia del nodo FlowOrder en un flujo de mensajes, podrá configurarlo. Para obtener más información, consulte Configurar un nodo de flujo de mensajes.Las propiedades del nodo se visualizan en la vista Propiedades,
Los terminales del nodo FlowOrder están descritos en la siguiente tabla.
Terminal | Descripción |
---|---|
In (de entrada) | El terminal de entrada que acepta un mensaje para que lo procese el nodo. |
Failure (de anomalías) | El terminal de salida al que se direcciona el mensaje si se detecta una anomalía durante el cálculo. |
First (primero) | El terminal de salida al que se direcciona el mensaje de entrada en primer lugar. |
Second (segundo) | El terminal de salida al que se direcciona el mensaje de entrada en segundo lugar. El mensaje sólo se dirige a este terminal si el direccionamiento al primero se ejecuta correctamente. |
La tabla siguiente describe 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).
Las propiedades de Descripción del nodo FlowOrder están descritas en la siguiente tabla.
Propiedad | O | C | Valor predeterminado | Descripción |
---|---|---|---|---|
Nombre de nodo | No | No | FlowOrder | El nombre del nodo. |
Descripción corta | No | No | Descripción breve del nodo. | |
Descripción larga | No | No | Texto que describe el propósito del nodo en el flujo de mensajes. |
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. |