Building scalable web sites
“Building Scalable Websites” is one of those tech books that is really hot around Silicon Valley. It’s a book that every web developer working with big sites should have in his desktop.
While working at Technorati Japan I learned that is much much much difficult and expensive to develop a web application that is used by millions of people everyday than one that is used “only” by some thousands of people a day. It seems obvious, but 99% of the new Internet companies (those called Web2.0 companies) are failing because they don’t really know how to scale their services.
Scaling in a good way, means to do it fast, with the least money possible and thinking that in the future you will be hundreds of times bigger. Google, Amazon and Yahoo people are the best in the world scaling, they have thousands of millions of users a day without many problems. For example, in this great article you can read how they managed at Myspace, one of the fastest-growing web applications in the history.
The book “Building Scalable Websites” is written by someone that knows a lot about this stuff. The Flickr main programmer, the mind that crafted Flickr form it’s beginnings and is still managing everything. Flickr is possibly one of the most stable and big web applications on the net. The book is written in a very simple style, no “crap talking” to make more pages, it explains real problems that they found when building Flickr and how they solved them (They even show Flickr source code). It explains how to build a nice API, how to create a nice development environment, how to scale mysql, load balancing, attack protection, internationalization, syndication, apache and php scaling, caching, messaging services and so on.
Flickr serves 5.000 pages every second, it has more than 100.000 working, and its users are generating 60.000 database transactions per second. by far one of the most stable web applications I know. Learn from someone who created it is a pleasure, one of the best technical books I know.