O fluxo de difusão de agregação recebe a mensagem de entrada inicial e a reestrutura para apresentar vários pedidos a vários aplicativos de destino.
Antes de começar:
Para concluir esta tarefa, você deve ter concluído a seguinte tarefa:
Para rever um exemplo de um fluxo de difusão, consulte a amostra fornecida com o .
Para criar o fluxo de difusão:
Isso representa a configuração mais simples; se apropriado, você pode incluir outros nós entre o nó de entrada e o nó AggregateControl. Por exemplo, talvez você queira armazenar o pedido para fins de auditoria (em um nó Warehouse) ou incluir um identificador exclusivo à mensagem (em um nó Compute).
Se os aplicativos de destino que manipulam os pedidos de subtarefas puderem extrair as informações requeridas da única mensagem de entrada, não será necessário incluir um nó Compute para dividir a mensagem. Você pode transmitir toda a mensagem de entrada para todos os aplicativos de destino.
Se seus aplicativos de destino esperam receber um pedido individual, não toda a mensagem de entrada, será necessário incluir um nó Compute para gerar cada mensagem de saída de subtarefa individual a partir da mensagem de entrada. Configure cada nó Compute da seguinte forma, copiando o subconjunto apropriado da mensagem de entrada para cada mensagem de saída.
O nó AggregateControl insere elementos na árvore LocalEnvironment na mensagem de entrada que são lidos pelo nó AggregateRequest quando a mensagem o atinge. Verifique se o LocalEnvironment é copiado da mensagem de entrada para a mensagem de saída no nó Compute. Isso ocorre automaticamente, a menos que você especifique um valor que inclua Ambiente Local (All, Ambiente Local, Ambiente Local e Message ou Exception e Ambiente Local).
Se você especificar um desses valores, o intermediário assumirá que você está personalizando o nó Compute com o ESQL que grava no Ambiente Local e que você sobreporá os elementos nessa árvore que são requeridos na mensagem de saída.
Se desejar modificar Ambiente Local, inclua a seguinte instrução para copiar as informações agregadas requeridas da mensagem de entrada para a mensagem de saída:
SET OutputLocalEnvironment.ComIbmAggregateControlNode = InputLocalEnvironment.ComIbmAggregateControlNode;
Esse deve ser um nó de saída que suporta o modelo de pedido/resposta. Você pode utilizar os nós internos MQeOutput e MQOutput ou um nó de saída definido pelo usuário que suporta pedido/resposta ou uma mistura desses nós (dependendo dos requisitos dos aplicativos de destino).
As informações gravadas por nós internos são o nome da fila, o nome do gerenciador de filas, o ID da mensagem e o ID de correlação (do MQMD) e o identificador de resposta da mensagem (definido com o mesmo valor que o ID da mensagem).
Se você estiver utilizando um nó de saída definido pelo usuário, assegure que o nó armazene informações equivalentes no WrittenDestination. Para obter informações adicionais, consulte Protocolos Suportados para Agregação.
O nó AggregateRequest grava um registro no banco de dados do intermediário para cada mensagem processada. Isso permite que o nó AggregateReply identifique a qual pedido cada resposta específica está associada. Se seus nós de saída não forem transacionais, a mensagem de resposta poderá chegar no fluxo de recepção antes da consolidação da atualização desse banco de dados. Consulte Definindo Tempos Limites para Agregação para obter detalhes de como os tempos limite podem ser utilizados para evitar essa situação.
Conceitos relacionados
Fluxos de Mensagem
Árvore Ambiente Local
Agregação de Fluxo de Mensagens
Nós Input definidos pelo usuário
Nós de Saída Definidos pelo Usuário
Tarefas relacionadas
Configurando Fluxos de Agregação
Criando um Fluxo de Recepção de Agregação
Associando Fluxos de Agregação de Difusão e Recepção
Definindo Tempos Limites para Agregação
Utilizando Vários Nós AggregateControl
Tratando Exceções e Conflitos do Banco de Dados em Fluxos de Agregação
Projetando um Fluxo de Mensagens
Criação de um Fluxo de Mensagens
Definindo o Conteúdo do Fluxo de Mensagens
Gerando Várias Mensagens de Saída
Desenvolvendo Extensões Definidas pelo Usuário
Referências relacionadas
Nó AggregateControl
Nó AggregateReply
Nó AggregateRequest
Nó Compute
Nó MQeInput
Nó MQeOutput
Nó MQInput
Nó MQOutput
Avisos |
Marcas |
Downloads |
Biblioteca |
Suporte |
Feedback
![]() ![]() |
ac12290_ |