Un simple bug hizo que este desarrollador perdiera miles de euros. Generó un inusual tráfico de la nada

codigo
1 comentario Facebook Twitter Flipboard E-mail

Aunque a día de hoy contemos con multitud de herramientas de apoyo, escribir código es una tarea que requiere estar al tanto de multitud de factores, sobre todo si tu trabajo depende de la experiencia de uso de miles de clientes. La experiencia que tuvo Adam Pietrasiak, creador de la app Screen Studio, fue una que no olvidará jamás, es por ello que lo documentó todo en su blog como símbolo de transparencia y para aprender de sus errores.

Modificar tan solo una línea de código le costó unos 8.000 dólares. Todo debido a un bug provocado por su modificación que hizo que el tráfico de su cuenta de Google Cloud se disparara sin que él se diera cuenta, generando 2 petabytes de tráfico en el periodo de casi un mes.

Un error que afectó a miles de usuarios y generó una ingente cantidad de tráfico de red

Según afirma Pietrasiak, fue algo que sucedió hace unos dos meses. Su aplicación, Screen Studio, es una sencilla herramienta que sirve para grabar la pantalla del ordenador. Es exclusiva para macOS, y se trata de una manera fácil y rápida de grabar y modificar multitud de aspectos. Ésta requiere además de un proceso de actualización automática cuando abres la app, algo muy común. De esta manera, los usuarios pueden instalar la última versión de la app fácilmente.

Internet Imagen: Adam Pietrasiak

Antes de provocar el bug con la modificación, este proceso comprobaba si había actualizaciones cada 5 minutos. Si había alguna disponible, la descargaba y esperaba a la decisión del usuario para instalarla. Sin embargo, al cambiar la línea de código, Pietrasiak se olvidó de añadir la línea de código que terminaba de comprobar y descargar la actualización una vez ya se había descargado por primera vez.

El resultado de este error no hubiese sido tan grave si fuese para él mismo o para un único dispositivo. Pero esto hizo que cada usuario que tuviese descargada la app descargase 250 MB de actualización cada cinco minutos. Esto hizo que comprometiese la experiencia de miles de usuarios mientras también consumían ancho de banda de manera desmesurada.

La app, la cual se encontraba en segundo plano para miles de usuarios durante varias semanas, descargaba el archivo de 250 MB unas 288 veces al día para cada usuario (12 veces cada hora). Haciendo cálculos, el error de código provocó que el mismo archivo fuese descargado un total de 9 millones de veces aproximadamente., generando unos 2 millones de gigabytes de tráfico en Google Cloud.

Coste Imagen: Adam Pietrasiak

Al no disponer ningún tipo de marca o seguimiento de tráfico en Google Cloud, Pietrasiak no se dio cuenta del error hasta pasadas varias semanas. Si bien asegura que su factura mensual de Google Cloud no llega a los 300 dólares, tras esta ingente cantidad de tráfico la cifra ascendía a más de 8.000 dólares. Suerte para él que sí tenía límites puestos en su tarjeta bancaria, de lo contrario hubiera sido aún más devastador para él.

Pietrasiak afirma que uno de los usuarios que utilizaba su aplicación y que contactó con ellos le comentó que canceló su tarifa de Internet contratada debido al continuo tráfico generado durante ese mes. Fue bastante problemático para él, pues no había otra compañía de Internet. Pietrasiak asegura que quiso hacerse cargo de todos sus costes, pero afortunadamente el usuario pudo resolverlo con su proveedor de Internet sin mayores problemas.

Tras este fallo garrafal, Pietrasiak resume los puntos en los que deberá mejorar la próxima vez, entre ellos añadir alertas en el servicio basado en la nube que utilicen, escribir cuidadosamente aquel código que tenga el potencial de generar costes, añadir señales especiales para cambiar en el servidor y que la app comprenda, y echarle un ojo de manera más asidua al servicio en la nube contratado.

Imagen | James Harrison

En Genbeta | Un bug de software hizo que la cola de los aviones chocara con la pista: provocó que se paralizaran todos los vuelos de la aerolínea

Comentarios cerrados
Inicio