So far, we have seen how Serverless systems are designed, implemented, monitored, and secured. In this chapter, we will look at how Serverless systems can be scaled. Scalability is often associated with the ability of a system to withstand a high load seamlessly. While this is true, the scalability of Serverless systems often encompasses a lot more.
Serverless systems typically consist of ephemeral functions and third-party services. The notion of state is almost nonexistent and hence statelessness is a key attribute of constituent functions of a Serverless system. The surface area and the responsibility of these functions are very minimal and should strictly adhere to the single-responsibility principle. Systems powered by serverless architectures consist of hundreds of nanoservices (typically an ephemeral function), each doing one job and doing it well...