WebSphere Message Broker, Versión 8.0.0.5 Sistemas operativos: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

Consulte la información sobre la última versión del producto en IBM Integration Bus, Versión 9.0

Grupos de secuencias

Puede utilizar los grupos de secuencia para controlar la forma en que se agrupan los mensajes para su proceso por parte de los nodos Secuencia y Resequence.

De forma predeterminada, todos los mensajes que llegan a los nodos Secuencia y Resequence se ordenan como parte de un único grupo de secuencia. Sin embargo, puede dividir los mensajes en diversos grupos de secuencia, utilizando un identificador de grupo de secuencia dentro del mensaje y ordenar cada grupo de secuencia de forma independiente. Por ejemplo, supongamos que tiene un flujo de mensajes que recibe, procesa y reenvía registros de pacientes. Es importante mantener el orden de los registros para cada paciente individual, pero no es necesario que haya ningún orden entre los pacientes. En este caso, el identificador del grupo de secuencia sería el nombre o ID del paciente.

El grupo al que pertenece un mensaje viene determinado por el identificador de grupo que se ha especificado en el mensaje. Puede utilizar la propiedad Vía de acceso de identificador de grupo de secuencia en los nodos Secuencia y Resequence para especificar la ubicación del identificador de grupo de secuencia en el mensaje.

Los mensajes que tienen el mismo identificador de grupo se consideran parte del mismo grupo de secuencia. Si no se especifica ningún grupo de secuencia se utiliza un solo grupo de secuencia predeterminado para todos los mensajes. No obstante, si la propiedad Vía de acceso de identificador de grupo de secuencia especifica una ubicación en el mensaje que no existe, se produce un error.

Cada grupo de secuencia se puede asociar únicamente a un nodo Secuencia. Diversos nodos pueden tener un grupo de secuencia con el mismo nombre, pero cada uno de estos grupos de secuencia está asociado a un solo nodo y está separado de los otros grupos con el mismo nombre que se encuentran en otros nodos. Por ejemplo, SequenceNode1 puede tener un grupo de secuencia llamado GroupA, y SequenceNode2 también pueden tener un grupo de secuencia llamado GroupA, pero son grupos separados.

Aunque puede reutilizar los grupos de secuencia una vez cerrados, hay el riesgo de que dos apariciones del mismo grupo de secuencia se solapen, y los resultados serían imprevisibles.

Por ejemplo, si tiene un grupo de secuencia que incluye los números 1-10 y el grupo se utiliza dos veces de forma sucesiva, es posible que la segunda aparición del número de secuencia 1 llegue antes que el número de secuencia 10 de la primera ocurrencia. Si esto ocurre, se produce una excepción de mensaje duplicado. Por este motivo, se recomienda utilizar un nombre de grupo para un sólo conjunto de números de secuencia, en vez de reutilizarlo en un nodo Resequence. Si decide reutilizar un grupo de secuencia, asegúrese de hacerlo únicamente cuando esté seguro de que el uso anterior hace un buen rato que ha finalizado.

Incluso si ya se han recibido todos los números de la primera ocurrencia del grupo, puede resultar difícil saber con seguridad cuándo está cerrado el grupo, porque el grupo se cierra únicamente cuando se ha terminado por completo de procesar el último mensaje; esto incluye cualquier proceso que se requiera en sentido descendente a partir de ese nodo. Cualquier mensaje que llegue de la segunda ocurrencia da un error de mensaje duplicado a menos que haya finalizado por completo todo el proceso de los mensajes anteriores. Cuando un grupo de secuencia empieza a solaparse, es muy difícil recuperar todos los mensajes (de los dos usos del grupo) en el orden correcto, aunque no se pierdan mensajes.

Avisos | Marcas registradas | Descargas | Biblioteca | Soporte | Comentarios

Copyright IBM Corporation 1999, 2014Copyright IBM Corporation 1999, 2014.

        
        Última actualización:
        
        Última actualización: 2015-02-28 17:00:54


Tema de conceptoTema de concepto | Versión 8.0.0.5 | bc28021_