The next turn in our serverless journey takes us away from web-centric patterns and towards those suitable for a variety of problems, web and otherwise. In this chapter, we'll discuss the fan-out pattern, which may be used in many different contexts, either by itself as a standalone system or within a larger project as a sub-unit. Conceptually, the fan-out pattern is precisely what it sounds like—one serverless entry point results in multiple invocations of downstream systems. Big data platforms and computer science algorithms have been using this trick for a very long time; by taking a sizable computational problem and breaking it into smaller pieces, a system can get to the result faster by working on those smaller pieces concurrently. Conceptually, this is precisely how MapReduce works in the mapping step.
In this chapter...