An asynchronous aggregation pattern continues where the previous splitter pattern ended. By implementing this pattern, you can aggregate results of processed, smaller messages into a large message. Each processed message represents an individual unit of work that has no dependency on other messages. It can be useful when a client sends a batch to be processed and expects a batch response, with results for each message in the batch.
Open Visual Studio 2010 and create a solution for the debatching process. For reference, you can download the source code (BTS.Cookbook.AsyncAggPattern
) belonging to this chapter.
First, you will debatch the message using the Implementing the splitter pattern recipe. For instance, you can use envelope debatching. There will be orchestration(s) subscribing to the resulting messages, which can be any kind of orchestration(s) processing the messages. Results of processing can be aggregated and...