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

Cenário de Sequenciamento de Mensagens 1

Altere a sequência de mensagens recebidas do WebSphere MQ, para que elas sejam propagadas na ordem correta usando um número de sequência definido em uma mensagem XML.

Antes de começar:

Leia o tópico de conceito sobre Sequenciamento de Mensagens.

Nesta tarefa de exemplo, a sequência é definida como iniciando no número de sequência 0 (que é o padrão) e terminando no número de sequência 8. O fluxo de mensagens é configurado para que mensagens possam chegar fora de ordem mas não possam ser propagadas fora de ordem, mesmo se um dos números de sequência nunca chegar.

As etapas a seguir mostram como gravar um fluxo de mensagens que pode receber o documento XML do WebSphere MQ, reordenar as mensagens com base em um número de sequência em uma mensagem XML (neste exemplo o caminho $Root/XMLNSC/Doc/SeqNo é usado) e gravar em uma fila do WebSphere MQ:

  1. Crie um fluxo de mensagens chamado Resequence_Task1, contendo um nó MQInput, um nó Resequence e um nó MQOutput. Para informações adicionais sobre como fazer isto, consulte Criação de um Fluxo de Mensagens.
  2. Conecte o terminal Out do nó MQInput ao terminal In do nó Resequence.
  3. Conecte o terminal Out do nó Resequence ao terminal In do nó MQOutput.
    Fluxo de mensagens consistindo em nós MQInput, Resequence e MQOutput.
  4. Configure as seguintes propriedades do nó MQInput:
    1. Na guia Básico, configure a propriedade Nome da Fila como RESEQUENCE_TASK1_IN1
    2. Na guia Análise de Mensagem de Entrada, configure a propriedade Domínio de Mensagem como XMLNSC.
  5. No nó Resequence, configure as propriedades a seguir na guia Básico:
    1. Configure a propriedade Caminho para número de sequência como $Root/XMLNSC/Doc/SeqNo
    2. Configure a propriedade Definição de Fim da Sequência como Literal com um valor igual a 8.
  6. No nó MQOutput, configure a propriedade Nome da Fila (na guia Básico) como RESEQUENCE_TASK1_OUT1.
  7. Salve o fluxo de mensagens.

Processamento de mensagens no fluxo de mensagens:

Esta seção descreve a maneira na qual o nó Resequence processa as mensagens que entram no fluxo de mensagens.

  1. As seguintes mensagens chegam na fila do WebSphere MQ RESEQUENCE_TASK1_IN1:
    <Doc><SeqNo>0</SeqNo></Doc>,<Doc><SeqNo>1</SeqNo></Doc>,<Doc><SeqNo>2</SeqNo></Doc>,
    <Doc><SeqNo>3</SeqNo></Doc>,<Doc><SeqNo>4</SeqNo></Doc>,<Doc><SeqNo>5</SeqNo></Doc>,
    <Doc><SeqNo>6</SeqNo></Doc>,<Doc><SeqNo>7</SeqNo></Doc>,<Doc><SeqNo>8</SeqNo></Doc>,
  2. O nó Resequence primeiro recebe a mensagem com o número de sequência 0. O nó Resequence cria um novo grupo de sequências para gerenciar o processo de reordenação; o novo grupo de sequências é um grupo padrão porque nenhum grupo de sequências foi definido na mensagem. A mensagem (com número de sequência 0) é a primeira na sequência, portanto, ela é propagada para o terminal Out.
  3. O nó Resequence, em seguida, recebe o restante das mensagens até, e incluindo, o número de sequência 8, e as propaga na ordem na qual elas chegaram. Cada mensagem é armazenada antes de ser propagada e uma transação diferente é usada para propagar o recebimento de dados das mensagens a partir do nó Resequence.
  4. Quando a mensagem contendo o número de sequência 8 é processada, o grupo de sequências é fechado. Qualquer nova mensagem no mesmo grupo que chega posteriormente faz com que um novo grupo seja criado.
  5. As próximas mensagens chegam na fila RESEQUENCE_TASK1_IN1:
    <Doc><SeqNo>8</SeqNo></Doc>,<Doc><SeqNo>7</SeqNo></Doc>,<Doc><SeqNo>6</SeqNo></Doc>,
    <Doc><SeqNo>5</SeqNo></Doc>,<Doc><SeqNo>4</SeqNo></Doc>,<Doc><SeqNo>3</SeqNo></Doc>,
    <Doc><SeqNo>2</SeqNo></Doc>,<Doc><SeqNo>1</SeqNo></Doc>,<Doc><SeqNo>0</SeqNo></Doc>,
  6. O nó Resequence primeiro recebe a mensagem contendo o número de sequência 8. Neste ponto, o nó Resequence cria um novo grupo de sequências (padrão). A mensagem é a última na sequência, portanto, ela não é propagada mas é armazenada internamente.
  7. O nó Resequence, então, recebe o restante das mensagens até e incluindo o número de sequência 0. Todas as mensagens são armazenadas e nenhuma é propagada até que o primeiro número na sequência seja recebido (neste caso, número de sequência 0).
  8. Quando a mensagem com o número de sequência 0 é recebida, ela é propagada pelo fluxo de mensagens, seguida por cada uma das outras mensagens, na ordem, até a mensagem final (número de sequência 8) ser propagada. Neste ponto, o grupo de sequências é fechado novamente.
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 TarefaTópico de Tarefa | Versão 8.0.0.5 | bc28024_