· Las caidas de Facebook. (Declaración oficial)


El día de ayer la caída fue en Chile, el día de hoy fue Mundial.
Y fue su peor día en más de cuatro años, con 2 horas y media de tiempo de inactividad, que dio lugar a innumerables quejas de los usuarios.
Lo más grave, fue la falla de las API y botones "Me gusta" , distribuidas en más de 350.000 sitios en la red.

El siguiente texto corresponde a la versión oficial entregada por Robert Johnson, del departamento de Ingeniería de Facebook.

"La falla fundamental que provocó esta interrupción, y la hizo tan grave, fue un desafortunado manejo de una condición de error. Un sistema automatizado para verificar los valores de configuración, terminó causando mucho más daño de lo que podía arreglar.
La intención del sistema automatizado, es comprobar los valores que no son válidos en la caché y reemplazarlo por valores actualizados desde el almacenamiento persistente. Esto funciona bien para un problema transitorio con la caché, pero no funciona cuando el almacenamiento persistente no es válido.
Hoy hemos hecho un cambio a la copia persistente de valores de configuración que fueron interpretados como inválidos. Esto significa que cada cliente vio el valor no válido y trató de arreglarlo. Debido a que la corrección implica hacer una consulta a un grupo de bases de datos, ese grupo fue rápidamente abrumado por cientos de miles de consultas por segundo.
Para empeorar las cosas, cada vez que un cliente tenía un error al intentar una consulta a la base de datos, fue interpretado como valor no válido y suprimió el caché key correspondiente. Esto significa que incluso después del problema original, el flujo de consultas continuó. Mientras las bases de datos fallaban a las solicitudes, se producían aún más solicitudes a sí mismas. Habíamos entrado en un bucle de retroalimentación que no permitía que la base de datos se recuperara.
La manera de detener el ciclo de retroalimentación fue muy dolorosa, tuvimos que parar todo el tráfico hacia la base de datos, lo que significó apagar el sitio. Una vez que las bases de datos se habían recuperado y la causa fue reparada, los usuarios pudieron volver a ingresar al sitio lentamente.
Esto tiene de vuelta y funcionando hoy, y por ahora hemos desactivado el sistema que intenta corregir los valores de configuración. Estamos explorando nuevos diseños para este sistema de configuración siguiendo los patrones de diseño de otros sistemas en Facebook, que se comportan mejor con la retroalimentación y la sobrecarga.
Nos disculpamos de nuevo por la interrupción en el sitio, y queremos que sepan que en Facebook nos tomamos muy enserio el tema de la fiabilidad y el rendimiento."


Fuente: http://www.facebook.com/Engineering

Continuar Leyendo...