«Building Scalable Websites» es el nombre del libro de moda en Silicon Valley. Un libro que todo desarrollador web debería tener en la mesa de trabajo y que servirá para que tu proyecto «web2.0» no se venga abajo por tener demasiado éxito.
Si algo he aprendido desde que estoy trabajando en Technorati es que es muchísimo más difícil y costoso desarrollar y mantener una aplicación web que es usada por varios millones de personas al día que una aplicación web usada por «tan solo» unas decenas de miles de personas al día.
Para no fracasar en el paso de ser una web de pocos usuarios a ser una web usada por millones hay que saber «escalar» de forma correcta, con el mínimo dinero posible, y rápidamente. Los que mejor saben hacer esto son la gente de Google, Yahoo y similares que dan servicio a miles de millones de peticiones al día sin apenas problemas. Por ejemplo, en este artículo tenéis la apasionante historia de la evolución del código – infraestructura – servidores de Myspace, quizás una de las aplicaciones web que más rápidamente ha tenido que «escalar» en los últimos años.
El libro «Building Scalable Websites» está escrito por el programador jefe de Flickr (La mente principal que ha trabajado desde el comienzo de Flickr), otra aplicación web con una estabilidad y capacidad de procesar enormes cantidades de datos sin precedentes. Lo bueno del libro es que está escrito en un estilo muy directo, sin andarse con rodeos, explicando problemas con los que se encontraron al montar Flickr y cómo los solucionaron con ejemplos concretos reales (Mostrando código fuente de Flickr). Explica cómo montar un API, como montar un entorno de desarrollo, cómo escalar Mysql, balanceo de cargas, protección contra ataques, internacionalización sin morir en el intento, sindicación, escalando Apache y Php, caching, messaging services etc.
Flickr sirve 5.000 páginas por segundo, tiene 100.000 líneas de código php en funcionamiento, y sus usuarios generan 60.000 transacciones en las bases de datos por segundo. Aun así es una de las aplicaciones web más estables que conozco. Aprender de la mente que ha creado tal maravilla es un placer, sin duda uno de los mejores libros técnicos que conozco.