Chapter 17. High availability: content-delivery networks
Before beginning this final high-availability chapter, let’s see what you have so far. You first learned how to “robustify” your resources by spreading them among multiple availability zones (chapter 14). You then added centralized coordination of your replicated instances through load balancing (chapter 15). And finally, in chapter 16, you took control of the launch process by placing your prebuilt AMI in an auto scaling group. This let you automate the process of replacing failed instances and, when necessary, adding new ones to meet growing demand.
What’s missing? Well, considering the fact that your infrastructure is now robust and self-healing, nothing—but it could still be faster. Remember, this is all about providing the best service. And “best” includes ensuring that your customers experience as few delays as possible.
What kinds of delays am I talking about? Anything that unnecessarily prolongs the time between a customer’s request for data and the delivery of that data. And considering the fact that a serious percentage of users will abandon your website if a page takes longer than 2 or 3 seconds to load, this is a big deal.