Pirobits
  

Se cae Fastly, se cae internet (análisis)

alberto avatar Alberto Sola · 6/9/2021 · 3 min

El otro día me sorprendió ver cómo gran parte de internet estaba caído: páginas como Amazon, StackOverflow, diversos medios de comunicación... dejaron de funcionar.

Más adelante pudimos ver que fue problema de la compañía Fastly. Esta empresa ofrece productos de computación edge: CDN, funciones serverless... al igual que otras empresas como Cloudflare, o AWS (Amazon Web Services) con productos como Cloudfront + Lambda@edge.

¿Qué es un CDN?

Brevemente, un CDN o Content Delivery Network, es una red que permite servir contenido mediante servidores localizados en todo el mundo. Es un servicio que se localiza entre el cliente final y los servidores de una empresa.

Un CDN se encarga de cachear los ficheros web (html, css, js, imágenes...) de una web en servidores de todo el mundo. De esta forma los usuarios acceden al servidor más cercano, con menos latencia, siendo el acceso más rápido. Por otro lado nuestros servidores reciben menos carga de tráfico.

¿Cuál fue el motivo de la caída?

Tras leer todas las noticias, me picaba la curiosidad de saber qué pasó para que una empresa tan importante cometiese un fallo de este calibre. Todos nos podemos equivocar, pero estas empresas que suelen ofrecer un SLA bastante alto, por lo que sus tests automáticos deben ser muy rigurosos. Es por esto que leer el post mortem es una buena forma de aprender qué cosas te pueden pasar a tí en un futuro (y evitarlas).

He estado buscando y parece que no han hecho público el análisis aún (o quizá no lo lleguen a publicar). Al menos han publicado esta entrada en su blog donde nos cuentan un poco qué ocurrió:

On May 12, we began a software deployment that introduced a bug that could be triggered by a specific customer configuration under specific circumstances. Early June 8, a customer pushed a valid configuration change that included the specific circumstances that triggered the bug, which caused 85% of our network to return errors.

Básicamente introdujeron un bug hace un mes, que tras una configuración específica de un cliente, produjo una caída del 85% de su red.

Estaré atento por si en un futuro publican exactamente qué ocurrió.

Reflexión

Es interesante ver cómo funciona internet, y cómo al montar nuestros servicios dependemos de un único proveedor, porque asumimos que los servicios de terceros no van a fallar nunca.

Por ejemplo, podemos enviar un email a un usuario pensando que este servicio (Gmail, Amazon SES, Mailgun...) no se caerá. Como vemos recientemente, todos pueden cometer errores que repercuten en nuestros sistemas, normalmente en el momento en el que menos lo deseamos, afectando directamente a la calidad del servicio, y por tanto al cliente (usuario final).

Es por esto que cuando diseñamos un servicio web, tenemos que ver qué dependencias tiene y qué ocurre si alguna de estas no funciona.

Muchas veces delegar en trabajos asíncronos, como colas de mensajes o funciones serverless, pueden salvarnos de más de un susto en momentos de alta carga o errores inesperados ;)

Si te ha resultado útil este artículo agradecería si te suscribes a mi newsletter. Recibirás contenido exclusivo de calidad y también me ayudarás enormemente. Cada suscripción apoya el trabajo que realizo y me permite conocer mejor los temas que te interesan, de forma que puedo mejorar los conocimientos que comparto contigo.


Posts recientes