Use grupos de sequências para controlar a maneira na qual mensagens são agrupadas para processamento pelos nós Seqüência e Resequence.
Por padrão, todas as mensagens que chegam nos nós Seqüência e Resequence são ordenadas como parte de um único grupo de sequências. Entretanto, é possível dividir mensagens em múltiplos grupos de sequências, com base em um identificador de grupo de sequências na mensagem e ordenar cada grupo de sequências independentemente. Por exemplo, você pode ter um fluxo de mensagens que recebe, processa e encaminha registros do paciente. É importante que a ordem dos registros seja mantida para cada paciente individual, mas a ordenação entre os pacientes não é necessária. Neste caso, o identificador do grupo de sequências seria o nome ou ID do paciente.
O grupo ao qual uma mensagem pertence é determinado pelo identificador do grupo especificado na mensagem. É possível usar a propriedade Caminho para identificador do grupo de sequências nos nós Seqüência e Resequence para especificar o local do identificador do grupo de sequências na mensagem.
As mensagens que possuem o mesmo identificador de grupo são consideradas como parte do mesmo grupo de sequências. Se nenhum grupo de sequências for especificado, um único grupo de sequências padrão será usado para todas as mensagens. No entanto, se a propriedade Caminho para o identificador do grupo de sequências especificar um local na mensagem que não existe, ocorrerá um erro.
Cada grupo de sequências pode ser associado a apenas um nó Seqüência. Múltiplos nós podem ter um grupo de sequências com o mesmo nome, mas cada um destes grupos de sequências está associado a apenas um nó e é separado dos outros grupos com o mesmo nome em diferentes nós. Por exemplo, SequenceNode1 pode ter um grupo de sequências chamado GroupA e SequenceNode2 também pode ter um grupo de sequências chamado GroupA, mas eles são grupos separados.
Embora você possa reutilizar grupos de sequências quando eles foram fechados, há um risco de que duas ocorrências do mesmo grupo de sequências possam se sobrepor, com resultados imprevisíveis.
Por exemplo, se você tiver um grupo de sequências incluindo os números 1-10 e o grupo for usado duas vezes em sucessão de fechamento, é possível para a segunda ocorrência do número de sequência 1 chegar antes do número de sequência 10 da primeira ocorrência. Se isto ocorrer, uma exceção de mensagem duplicada ocorrerá. Por esta razão, é aconselhável usar um nome do grupo para apenas um conjunto de números de sequência, em vez de reutilizá-lo em um nó Resequence. Se você decidir reutilizar um grupo de sequências, certifique-se de reutilizá-lo apenas quando tiver certeza que o uso precedente foi concluído por uma quantidade de tempo significativa.
Mesmo se todos os números tiverem sido recebidos pela primeira ocorrência do grupo, pode ser difícil saber com certeza exatamente quando o grupo é fechado porque ele fecha apenas quando a mensagem final concluiu completamente o processamento; isto inclui qualquer processamento em que seja necessário o recebimento de dados do nó. Qualquer mensagem da segunda ocorrência falha como uma duplicata a menos que todo processamento esteja completo. Quando um grupo de sequências tiver iniciado a sobreposição, é muito difícil recuperar todas as mensagens (em ambos os usos do grupo) na ordem correta, embora nenhuma mensagem seja perdida).