Chapter 5. Scaling Your Infrastructure
In Chapter 4, Adding Continuous Integration and Continuous Deployment, in order to illustrate how deploying code works with CodeDeploy, we created a very rudimentary architecture to host our staging and production environments. Each of those environments is composed of only a single EC2 instance.
While this served us well to illustrate our CI/CD pipeline, this approach is of course not recommended when actually deploying an application in production. In this chapter, we will fix that design flow and also address most concerns an engineering organization could have with regards to scaling a typical web application.
We will look at scaling from the angle of performance where an application gets an increasing amount of traffic and also for redundancy purposes so that we can handle possible failures in our systems.
Scaling isn't necessarily a DevOps engineering philosophy. The cross-disciplinary nature that scaling an application requires coupled with the...