Escalando aplicaciones
Un tema que me gusta mucho es cómo escalar aplicaciones web, cuando se empiezan a recibir millones de visitas al día.
No es algo con lo que uno tenga que lidiar normalmente, desafortunadamente :-), pero a mi es un tema que me apasiona y al que presto mucha atención.
En Internet hay multitud de “historias de guerra” de distintos emprendedores que nos cuentan cómo han afrontado ellos este reto:
- SmugMug — Un servicio que aloja 140 millones de fotos y que se apoya en el servicio de hosting de Amazon (S3).
- Scribd — El videotube para documentos. Cómo escalar mediante “caching” de fragmentos de página.
(estas dos las he descubierto a través de Pensamientos Ágiles)
Por cierto, el servicio de presentaciones online SlideShare donde están estas presentaciones es otro ejemplo de uso de Amazon S3. En ese mismo sitio se pueden encontrar muchas presentaciones con el tag scaling y scale, algunas de las cuales son muy interesantes.
Y especialmente interesante me ha parecido el artículo del creador de mailinator. Mailinator es un servicio que recibe actualmente 2,5 millones de emails al día. Y lo hace con un sólo servidor (AMD 2Ghz Athlon, 1Gb de ram y disco duro de 80Gb). Y lo hace utilizando tecnología Java, a la que se le suele acusar de pesada. Todo un ejemplo de cómo un diseño inteligente es lo que verdaderamente escala.