- Scaling Up: Making Your Website Stand Up To Traffic
- Scaling Up: Baby Steps (a.k.a. Asking The Right Questions)
- Scaling Up: Reducing Drag, Increasing Lift
- Scaling Up: Picking The Right Setup
The ability to turn a website into a large web service is a skill that’s deeply important amongst web application developers, but yet I’ve found it to be somewhat lacking. How is it that this fundamental skill is so often overlooked? Part of it has to do with the fact that many developers work on applications that have a fairly small user base: less than 5,000 users per day, for example. Other times it’s because PHP is so easy to learn that the developers who master it don’t learn the architecture that goes along with it.
In this series, we’ll ask the questions and give a basic set of directions about how to scale a web application from the ground up. We’ll examine how to go from one server to many servers, and what questions to ask and things to look out for. This is not a guide for experts in the subject to hone their skills; rather, this is a beacon for those who have never scaled a website before, and perhaps are being asked to do so, or will be asked to do so fairly soon.
It’s worth noting that there is no one “right” way to accomplish this task. The folks at Facebook have scaled a massive web application in ways that won’t even be touched on in this series; their way is perfectly valid for the work that they do. Therefore this series should not be treated as the be-all-end-all in terms of lessons, but instead one guide, taken from many experiences, that applies to some situations and not at all to others.
Without further ado, I present Scaling Up.