In the Scalability and elasticity section of Chapter 3, Attributes of the Solution Architecture, you learned about different modes of scaling and how to scale static content, a server fleet, and a database at a high level. Now, let's look at various types of scaling that can be used to handle workload spikes.
Scaling could be predictive if you are aware of your workload, which is often the case; or it could be reactive if you get a sudden spike or if you have never handled that kind of load before. Regardless of scaling being reactive or predictive, you need to monitor the application and collect the data in order to plan your scaling needs accordingly. Let's dive deep into these patterns with examples.