Il flusso fan-in di aggregazione riceve le risposte ai messaggi di richiesta inviati dal flusso fan-out e crea un messaggio di risposta combinato che contiene tutte le risposte ricevute.
Prima di iniziare:
Per completare questa attività, è necessario completare prima quella che segue:
Si consiglia di leggere anche la panoramica relativa all'Aggregazione del flusso di messaggi, prima di completare questa attività.A seconda che il flusso fan-out sia transazionale e, in caso contrario, in base ai valori di timeout specificati, il messaggio di risposta combinato potrebbe essere generato prima che siano state ricevute tutte le repliche dal flusso fan-in. Consultare, Creazione del flusso fan-out di aggregazione per ulteriori informazioni su questo argomento.
E' possibile includere il flusso fan-out e fan-in nello stesso flusso di messaggi. Tuttavia si consiglia di creare due flussi separati. Non distribuire più copie dello stesso flusso fan-in nello stesso gruppo di esecuzione o in gruppi diversi. Per ulteriori informazioni sui vantaggi di configurare flussi di messaggi separati, consultare Associazione dei flussi di aggregazione fan-out e fan-in.
Per esaminare un esempio di flusso fan-in, consultare l'Esempio Prenotazioni per compagnie aeree fornito con WebSphere Message Broker.
Per creare il flusso fan-in:
Il nodo AggregateReply crea una cartella nella struttura ad albero del messaggio combinato sotto Root, denominata ComIbmAggregateReplyBody. Sotto questa cartella, crea un certo numero di cartelle utilizzando i nomi cartella impostati nei nodi AggregateRequest. I messaggi di replica associati sono inseriti sotto queste cartelle.
Ad esempio, i messaggi di richiesta potrebbero avere i nomi cartella:
Il risultante messaggio di replica aggregato creato dal nodo AggregateReply potrebbe avere una struttura simile a quella mostrata di seguito:
E' possibile utilizzare un nodo Compute per accedere alla replica dalla società di taxi utilizzando il seguente nome di correlazione:
InputRoot.ComIbmAggregateReplyBody.TAXI.xyz
Il nome della cartella non deve essere necessariamente univoco. Se si dispone di più richieste con il nome cartella TAXI, è possibile accedere alle repliche separate utilizzando l'annotazione di sottoscrizione dell'array, ad esempio:
InputRoot.ComIbmAggregateReplyBody.TAXI[1].xyz InputRoot.ComIbmAggregateReplyBody.TAXI[2].xyz