We’ve actually already stepped through one implementation of Scatter-Gather. This was the combination of Recipient List and Aggregator, which provides the first of two Scatter-Gather variants. The second variant—that of using a Publish-Subscribe Channel to send RequestPriceQuote messages to interested participants—is discussed here.
But wait! The MountaineeringSuppliesOrderProcessor from the Recipient List and Aggregator samples already maintains an interestRegistry. While true, it’s not the same as a Publish-Subscribe Channel. Rather than arbitrarily providing all interested parties with requests for quotation, the MountaineeringSuppliesOrderProcessor from the previous examples ultimately determines which interests will participate in providing quotes. It filters them by means of business rules checked in calculateRecipientList().
. . .
The full text is now available as part of my book Reactive Enterprise with Actor Model on Safari Books Online.