Você pode achar útil projetar um fluxo de difusão com
vários nós AggregateControl, todos com o mesmo valor definido para a
propriedade Nome
Agregado, mas com diferentes valores para a propriedade
Tempo Limite.
Esta é a única situação em que você
pode reutilizar um Nome Agregado.
Antes de começar:
Para concluir esta tarefa, você deve ter concluído a seguinte tarefa:
Por exemplo, se você tiver criado um fluxo de agregação
que reserva uma viagem de negócios, poderá haver alguns pedidos que
precisam de uma resposta em dois dias, mas outros pedidos, os mais
urgentes precisam de uma resposta em duas horas.
Para configurar um fluxo de agregação que utiliza vários nós
AggregateControl:
- Alterne para o Perspectiva do Desenvolvimento de Aplicativos do Intermediário.
- Crie ou abra o fluxo de mensagens de difusão.
- Configure o número requerido de nós AggregateControl.
Defina a propriedade Básica Nome
Agregado de cada nó para o mesmo valor. Por exemplo, inclua dois nós
e insira o nome JOURNEY como o Nome Agregado para ambos.
- Defina o valor para a propriedade Tempo Limite em cada nó como um valor
diferente. Por exemplo, defina o
Tempo Limite em um
nó como duas horas; defina o Tempo Limite no
segundo nó como dois dias.
- Configure um nó Filter para receber pedidos de entrada, verifique seu conteúdo e
roteie-os para o nó AggregateControl correto.
- Conecte os nós juntos para obter o resultado desejado. Por exemplo, se você
configurou o nó Filter para testar pedidos com um campo de prioridade
definido como urgente, conecte o terminal true ao nó AggregateControl
com o tempo limite curto.
Conecte o terminal false ao nó AggregateControl
com o tempo limite mais longo. Conecte os terminais de saída dos nós AggregateControl
aos seguintes nós no fluxo de difusão.
Você deve conectar os dois nós AggregateControl em paralelo, não em seqüência.
Isso significa que você deve conectar ambos
ao nó Filter (um ao terminal true, outro ao
false) e ambos aos nós downstream que tratam os pedidos
para difusão. Cada mensagem de entrada deve passar apenas por um dos nós AggregateControl.
Se você conectar os nós para que uma única mensagem seja processada
por mais de um nó AggregateControl, os registros duplicados são criados
no banco de dados pelo nó AggregateRequest e os resultados de processamento
subseqüentes são imprevisíveis.
O diagrama a seguir mostra um exemplo de fluxo de mensagens de difusão
que utiliza esta técnica.
