Potrebbe essere utile progettare un flusso fan-out con più nodi
AggregateControl, tutti con lo stesso valore impostato per la proprietà Nome aggregazione, ma con valori diversi per la
proprietà Timeout.
Questa è la sola situazione in cui è possibile riutilizzare un Nome aggregazione.
Prima di iniziare:
Per completare questa attività, è necessario
completare prima quella che segue:
Ad esempio, se è stato creato un flusso di aggregazione per la prenotazione di un viaggio di
affari, potrebbero esserci delle richieste che necessitano di una replica entro due
giorni, ma altre, più urgenti, che necessitano di una replica entro due ore.
Per configurare un flusso di aggregazione che utilizza più nodi
AggregateControl:
- Passare alla Prospettiva Sviluppo dell'applicazione
broker.
- Creare o aprire il flusso di messaggi fan-out.
- Configurare il numero di nodi AggregateControl richiesto. Impostare la proprietà
Base Nome aggregazione di ogni nodo sullo
stesso valore. Ad esempio, includere due nodi e immettere il nome
JOURNEY come Nome aggregazione per entrambi.
- Impostare il valore per la proprietà Timeout
in ogni nodo su un valore diverso. Ad esempio, impostare il Timeout in
un nodo su due ore; impostare il Timeout nel secondo nodo su
due giorni.
- Configurare un nodo Filter per ricevere le richieste in entrata, controllarne il
contenuto e instradarle al nodo AggregateControl corretto.
- Connettere i nodi per ottenere il risultato richiesto. Ad esempio, se il nodo Filter è stato configurato per eseguire il test di richieste con un campo di priorità
impostato su urgente, connettere il terminale true al nodo AggregateControl
con timeout breve. Connettere il terminale false al nodo AggregateControl
con timeout più lungo. Connettere i terminali out terminal dei nodi AggregateControl
ai seguenti nodi nel flusso fan-out.
E' necessario connettere i due nodi
AggregateControl in parallelo, non in sequenza. Questo significa che è necessario connetterli entrambi al
nodo Filter (uno al terminale true, uno al terminale false) e entrambi ai nodi successivi nel flusso che
gestiscono le richieste per il fan-out. Ogni messaggio di input deve passare attraverso un solo nodo AggregateControl. Se
si connettono i nodi in modo che un singolo messaggio sia elaborato da più nodi AggregateControl, il nodo AggregateRequest
crea dei record duplicati nel database e i risultati seguenti dell'elaborazione sono imprevedibili.
Il seguente diagramma mostra un esempio di flusso di messaggi fan-out che utilizza questa
tecnica.
