WebSphere Message Broker, Versão 8.0.0.5 Sistemas operacionais: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

Consulte as informações sobre a versão mais recente do produto em IBM Integration Bus, Versão 9.0

Finalizando uma Sequência de Mensagens

O fim de uma sequência de mensagens é determinado pela propriedade Definição do Fim da Sequência nos nós Resequence e Seqüência.

Utilizando um nó Resequence

Quando você usar o nó Resequence para reordenar mensagens em um fluxo de mensagens, use a propriedade Definição de Fim da Sequência no nó Resequence para definir como a sequência da mensagem reordenada terminará. É possível especificar o fim do número de sequência no nó Resequence de uma das seguintes maneiras:

Como um número literal
Selecione Literal para especificar um número de sequência literal como o fim da sequência. Este valor pode ser qualquer valor numérico positivo ou negativo no intervalo -9223372036854775807 a 9223372036854775807. Quando uma mensagem com o número de sequência especificado chega, o grupo de sequências é fechado. Se houver qualquer mensagem ausente na sequência, o grupo de sequências permanece aberto pelo período de tempo especificado pela propriedade Tempo Limite da Mensagem Ausente.
Por exemplo, assuma que você possui um nó do Resequence com as seguintes propriedades:
  • Propriedade Caminho para o número de sequência com um valor igual a /doc/seq
  • Propriedade Caminho para o identificador do grupo de sequências com um valor igual a /doc/grp
  • Propriedade Definição de Início da Sequência configurada como Literal com um valor igual a 0.
  • Propriedade Definição de Fim da Sequência configurada como Literal com um valor igual a 6. Este valor significa que o grupo será fechado quando uma mensagem com o número de sequência 6 for recebida e quando todas as mensagens anteriores na sequência tiverem sido recebidas (ou o tempo limite de mensagem ausente expirar).
As mensagens a seguir são recebidas pelo nó Resequence:
<doc><grp>a<grp><seq>6</seq></doc>
<doc><grp>a<grp><seq>5</seq></doc> 
<doc><grp>a<grp><seq>4</seq></doc> 
<doc><grp>a<grp><seq>3</seq></doc>
<doc><grp>a<grp><seq>2</seq></doc>
<doc><grp>a<grp><seq>1</seq></doc>
<doc><grp>a<grp><seq>0</seq></doc>
As mensagens a seguir são propagadas ao terminal Out:
<doc><grp>a<grp><seq>0</seq></doc>
<doc><grp>a<grp><seq>1</seq></doc>
<doc><grp>a<grp><seq>2</seq></doc>
<doc><grp>a<grp><seq>3</seq></doc>
<doc><grp>a<grp><seq>4</seq></doc>
<doc><grp>a<grp><seq>5</seq></doc>
<doc><grp>a<grp><seq>6</seq></doc>
Quando o grupo de sequências tiver fechado, qualquer mensagem adicional que chegar no nó para esse grupo de sequências será processada como parte de uma nova instância do grupo.
Por um tempo limite automático
Selecione Automático e especifique a duração de tempo (em segundos) durante a qual o nó aguarda que novas mensagens cheguem em uma fila vazia. Toda vez que a fila de mensagens aguardando para serem propagadas estiver vazia, o nó Resequence iniciará um cronômetro, que expira após o número de segundos especificado. Se nenhuma nova mensagem chegar dentro do tempo especificado, o grupo de sequências será fechado e qualquer nova mensagem que chegar subsequentemente será tratada como parte de um novo grupo. Se novas mensagens chegarem no nó dentro do limite de tempo especificado, o cronômetro será reconfigurado.
Usando conjunto de predicados no nó Resequence
Selecione Predicado e especifique uma expressão XPath para calcular se a mensagem é a última na sequência. O predicado é avaliado como True ou False e as mensagens continuam sendo coletadas enquanto a expressão é avaliada como False. Quando a expressão de uma mensagem é avaliada como True, isto indica que a mensagem é a última na sequência e o grupo de sequências está fechado. Entretanto, se mensagens anteriores estiverem ausentes no grupo de sequências, o grupo de sequências permanecerá aberto pelo período de tempo especificado pela propriedade Tempo Limite de Mensagem Ausente.

Quando o grupo de sequências tiver fechado, qualquer mensagem adicional que chegar no nó para esse grupo de sequências será processada como parte de uma nova instância do grupo.

Geralmente, a expressão XPath é avaliada como um Booleano; entretanto, se outros tipos de dados forem retornados, o predicado será determinado da seguinte maneira:
Tabela 1.
Tipo de dado retornado Verdadeiro Falso
Booleana Verdadeiro Falso
Numeric Qualquer valor diferente de zero 0 ou 0.0
Cadeia Qualquer cadeia correspondente a true (sem distinção entre maiúsculas e minúsculas) Qualquer cadeia não correspondente a true (sem distinção entre maiúsculas e minúsculas)
Conjunto de Nós Nunca Sempre

Quando uma mensagem avalia a expressão como True (e é, portanto, identificada como a última mensagem na sequência), o nó verifica se a mensagem possui o número de sequência mais alto coletado até esse ponto. Se forem localizadas mensagens com números de sequência maiores, uma exceção será lançada.

Utilizando um nó Seqüência

Quando você usar o nó Seqüência para incluir números de sequência em mensagens, use a propriedade Definição de Fim da Sequência para definir como a sequência da mensagem terminará. O nó Seqüência aloca um número de sequência monotonicamente crescente para cada mensagem de entrada que chega no nó, terminando com o número de sequência que você define na propriedade Definição de Fim da Sequência.

É possível especificar o fim do número de sequência no nó Seqüência de uma das seguintes maneiras:

Como um número literal
Selecione Literal e especifique um valor numérico positivo ou negativo como o fim do número de sequência (por exemplo, 15). O valor deve estar no intervalo -9223372036854775807 a 9223372036854775807. A sequência monotonicamente crescente termina quando atinge o fim do número de sequência especificado por esta propriedade.
Usando conjunto de predicados no nó Seqüência
Selecione Predicado para especificar se a sequência é finalizada quando a expressão XPath é avaliada como True. Para obter informações adicionais, consulte a tabela acima.
Por um tempo limite automático
Selecione Automático e especifique a duração de tempo (em segundos) durante a qual o nó aguarda novas mensagens após uma mensagem para o grupo de sequências ter sido propagada. Se uma nova mensagem chegar, o cronômetro será cancelado e reconfigurado quando a mensagem for propagada. Se nenhuma nova mensagem chegar dentro do tempo especificado, o grupo de sequências será fechado e qualquer nova mensagem que chegar subsequentemente será tratada como parte de um novo grupo.
Avisos | Marcas Registradas | Downloads | Biblioteca | Suporte | Feedback

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

        
        Última atualização:
        
        Última atualização: 2015-02-28 18:30:54


Tópico de ConceitoTópico de Conceito | Versão 8.0.0.5 | bc28023_