This graph shows how many times the word ______ has been mentioned throughout the history of the program.
Amigos, te voy a contar la historia de cómo casi en un fin de semana paso a pagar miles de euros por la web de la velada,
sin ningún tipo de escrúpulo ni control, por el ataque de algún desalmado que odia mi trabajo y ha querido desgraciarme la Semana Santa.
Mientras yo estaba plantando pepinos en el huerto, tranquilo, disfrutando de mi fin de semana, resulta que me ha pasado una cosa.
Y me llegó este correo, que pone Vercel Billing On Demand Bandwidth Alert for Midudep Pro.
Hace cuatro días, estaba en plena Semana Santa.
Y me dice, Midudep Pro ha utilizado el 75% del bandwidth, que es un tera que te dan de bandwidth, o sea, de transferencia de datos.
Básicamente, ¿cuánta transferencia de datos desde el servidor de Vercel le puedes proporcionar a los usuarios?
Un tera, que son muchos gigas, son mil gigas.
Bueno, pues resulta que una vez que llegas al tera, tienes que pagar 40 dólares, 40 dólares por cada 100 gigas.
Esto es una burrada, amigos.
O sea, 40 dólares por cada 100 gigas es mucho dinero.
Porque si lo miras fríamente, no tiene ningún tipo de sentido.
Este pricing de Vercel es bastante bestia.
¿Por qué es bastante bestia?
Porque el plan pro son 20 dólares y te dan una transferencia de un tera y a partir de que pasas esa capa, tienes que pagar por cada 100 gigas 40 dólares.
Tienes que pagar el doble.
No tiene sentido.
Ese pricing no tiene ningún tipo de sentido.
A mí, sinceramente, me parece una salvajada.
Me parece una salvajada.
Las cosas como son.
A ver si ahora me viene algún listo a decirme que me paga Vercel.
A ver, cómete esto, cómete esto, hombre.
Bueno, total, dice, si esto es lo que esperabas, felicidades, este es tu tráfico.
Y puedes ver tu progreso aquí.
Si esto no es lo que esperabas, puedes mirar cómo reducir el bandwidth, ¿no?
Lo que es la transferencia.
Para dejar de que tengas problemas y te cobremos, puedes borrar tu proyecto.
¡Hala! ¡Gracias!
¡Gracias!
A borrar el proyecto, a todos por saco, venga.
¡Pum!
Bien, entonces, entonces, como recordatorio, el fin del ciclo de este Tera es el 23 de abril.
El 23 de abril.
Que yo me quedé, ostras, ahí es cuando me di cuenta de, no puede ser.
O sea, el 23 de abril, si me queda casi el mes entero.
¿Cómo puede ser?
O sea, ¿cómo puede ser?
Me queda el mes entero todavía para que se resetee esto.
Claro.
Entonces, ahí me di cuenta que, ostras, algo no va bien.
Algo ha pasado aquí.
¡Raro!
Algo aquí ha pasado raro, ¿vale?
Entonces, ¿qué es lo primero que hice?
Pues lo primero que hice fue revisar.
¡Zrán!
Y me puse a mirar un poquito qué había pasado.
Lo que había pasado, si miramos aquí el current billing cycle, ¿vale?
Del 23 de abril al 23...
Del 23 de marzo al 23 de abril, que sería como lo que vamos a...
Lo que me van a cobrar, ¿no?
Donde está la capa.
Podemos ver que, entre diferentes cosas, el bandwidth...
Fijaos, ya lo tengo al 89%.
Al 89%.
Y veo que la velada, 94 gigas.
Una imagen, una imagen, la de Agustín versus Carrera, 29 gigas.
29 gigas de bandwidth.
Una imagen, 29 gigas.
Y realmente hemos tenido...
Hemos tenido ahí...
Realmente hemos tenido tantas visitas para esto.
Bueno, aquí podemos ver un poco cómo va la cosa.
Fijaos aquí en los días.
Si voy a poner aquí, vamos a poner los últimos 30 días.
Si ponemos los últimos 30 días y aquí vemos un poco cómo ha ido el consumo de ancho de banda...
Fijaos el 3 de abril.
3 de abril, 4 gigas.
6 gigas.
10 gigas.
13 gigas.
Este día, 58 gigas.
58 gigas.
Ojo, 58.
Bueno.
Pero dices, bueno, bueno.
Puede ser que a lo mejor, no sé qué.
Bueno.
Otro día baja, no sé qué.
Aquí sube, baja, sube, sube, sube.
Y aquí empieza a subir, pero esto ya no es normal.
En un día, 280 gigas.
280 gigas.
En un solo día, en un solo día, consume 280 días.
Pero claro, Vercell no me dice nada.
A Vercell le parece normal que yo que tengo durante todos mis días, tengo un consumo de 12 gigas, 11 gigas, bueno, 5 gigas, 7...
No, Vercell le parece normal que un día yo tenga un consumo de 280 gigas.
Bueno, no pasa nada.
Habrá tenido buena suerte.
Habrá tenido buena suerte el chaval.
Le habrá ido bien en la vida.
Habrá pensado, ¿no?
Le habrá ido bien en la vida.
Pero entonces el tema es, el tema es que el siguiente día, 140, 90...
Claro, alguien dirá, ¿por qué ha ido bajando?
Bueno, ha ido bajando, que fijaos que aquí volvió.
El tema es que todos estos días parece ser que bajó un poco, pero este día yo no me di cuenta porque no había llegado al límite.
Estos días bajó un poco y este día vuelve a subir.
183 gigas.
183 gigas en un día, solo en un día.
Y ya os digo que esto no está traducido ni mucho menos a visitas.
No es que hay visitas que digas, ¿no?
Es que, claro, hubo un pico de visitas.
Lo bueno es que tengo las visitas.
Y vamos a ver en las visitas que no hay un pico ese día que le dé respuesta.
Que quiera decir, ah, sí, sí, es que ese día hubo un pico de visitas.
Si miramos las visitas que tuvimos esos días, pues podemos ver que fueron las visitas normales y corrientes.
No hubo nada raro.
Más o menos, ahí lo tenemos, pues mira, el 23, el 27, normales.
De hecho, el 27, pues bastante normal.
No hubo nada.
No hubo absolutamente nada fuera de...
Nada raro.
Nada raro como para justificar que tuviera 100 veces más.
Ese día te funaron, puede ser.
Alguien me tiene mucha rabia y ahí me tiene ganas, me tiene ganas.
Bueno, puede ser.
No pasa nada, no pasa nada.
Entonces, el tema que seguí investigando.
Fijaos aquí que además se puede ver cómo son en imágenes.
Fijaos aquí que es verdad que en la velada me han intentado ahí un montón.
Pero fijaos que también en lavelada.dev.
Lavelada.dev era el dominio que teníamos de desarrollo de la velada cuando empezamos y tal.
Y aquí tenía 50 GB.
O sea que también ahí le han dado cañita, ¿no?
Entonces, imágenes.
Aquí un montón de imágenes y tal.
Y otro proyecto que vi que también le estaban atacando y le estaban dando cañita, Codilink.
Codilink lo que estaban haciendo, fijaos, era hacer peticiones indiscriminadas para estar consumiendo todo el rato el ancho de banda.
Y ahí tenemos, por ejemplo, un archivo de Codilink que ocupaba...
Bueno, lo pongo un poquito más pequeño para que lo veáis.
Pero el de Codilink, ¿vale?
Lo veis aquí.
Son 29 GB de transferencia de datos que se han hecho.
¿Por qué?
Porque lo que han estado haciendo todo el rato, todo el rato lo que estaban haciendo es como pedir ese recurso y ya está.
Así que lo que estaban haciendo es pedir todos los recursos que pudieran, que consumían mucho, que tenían mucha transferencia.
Y no parar todo el rato, no parar todo el rato de descargarlo y todo esto, ¿no?
De intentar constantemente de decir, vale, pues voy a descargar esta imagen una y otra vez, una y otra vez, una y otra vez, una y otra vez.
Hasta reventarle esto.
Pero yo obviamente os voy a decir una cosa sobre esto, ¿vale?
Aparte de que la persona que seguramente está haciendo esto, aparte de no tener vida y que me odia y que es su forma de canalizar su odio hacia mi persona o simplemente lo hace por pasárselo bien, que puede estar bien.
Yo no le culpo, no le culpo.
Pero sí que culpo a Bersel.
Y esto lo hablamos en su día.
Esto lo hablamos en su día.
O sea, a ver, no quiero decir, es culpa de Bersel y tal, pero me refiero a, aunque haya, imaginemos que ha sido un problema mío.
Joder, mejores mecanismos, ¿no?
Mejores mecanismos de, a la mínima que haya, un momento de que esto se dispara, que alguien puede pensar, bueno, es tu responsabilidad.
Bueno, sí, es mi responsabilidad, pero también es verdad que una de las cosas de las que espero de Bersel es que pueda levantar rápidamente esto y no cuando ya tienes un 75% de ancho de banda consumido.
Es como demasiado tarde, ¿no?
Eso es lo primero.
Porque tiene que tener mecanismos automatizados.
Y es verdad, y esto le vamos a decir algo bueno a Bersel, que tiene un sistema, si nos vamos aquí, lo digo por si os pasa alguna vez para que lo sepáis,
tiene un sistema aquí que si vais a Settings y vais a Security, podéis activar el modo ataque.
Entonces, esto lo que hace es que si alguien te está haciendo un ataque D2, ¿vale?
De negación de servicio, le puedes poner aquí Enable y esto es verdad que lo que va a hacer es que si alguien intenta entrar a la velada, bueno, ahora esto, ¿vale?
Pone un Security Checkpoint y al menos aquí sí que te va diciendo, vale, pues voy a asegurarme que realmente puedes tener acceso.
Lo bueno es que esto solo lo hace una vez y ya puedes entrar tantas veces como quieras y no vas a tener ningún problema, ¿vale?
Pero yo de esto también espero que haya algún tipo de mecanismo automático que evite esto sin necesidad de llegar a esto, ¿no?
O sea, cuando ves que el ancho de banda no corresponde con el nivel de peticiones y visitas que tiene la página, igual ahí algún tipo de aviso estaría bien.
Yo creo que esto es una cosa, más que nada, que podrían mejorar.
Ya no digo que te lo puedan solucionar porque son muy difíciles, pero sí el hecho de que a lo mejor te puedan avisar con más tiempo.
Ya os digo que esto me llegó un poquito demasiado tarde.
Yo creo que ahí hay un pelín de mejora y además es una cosa que vemos que nos preocupa y que es una realidad.
Mira, pasó hace poco con el chico de Netlify que casi le cobran, no sé si 2.000.
¿Os acordáis que lo estuvimos comentando?
Bueno, y ahora os explicaré cómo lo he arreglado, ¿eh?
O cómo lo he mitigado porque arreglar al 100% no se puede arreglar.
Pero hicimos un vídeo de esto.
Mira, Netlify le iba a cargar a un chico 100.000 dólares.
¡100.000 dólares!
Justamente por una idea, algo que pasó bastante similar.
De que alguien empezó a atacarle.
Seguramente, de hecho, es una persona que me ve, seguramente es una persona que me ve, que ha pillado la idea del vídeo que hicimos de Netlify.
O sea, totalmente, no tengo ningún tipo de duda.
Y con eso, seguramente, es que ha dicho, ah, pues lo voy a hacer con él, ¿sabes?
Con él mismo lo voy a hacer, se lo voy a poner.
Bueno, no pasa nada, ¿eh?
No tiene nada que ver con Midu.
Con tan más visita y tan más famoso eres, te encuentras con alguien con malas intenciones, le han pasado a todos los streamers.
No tiene nada que ver con Midu.
Hombre, tiene que ver conmigo, claro que tiene que ver conmigo.
¿Cómo no va a tener que ver?
No va a ser que se lleva mal mal con el vecino y por llevarse mal con el vecino me ataca a mí.
Claro que tiene que ver conmigo, ¿no?
O sea, no, es que me cae mal mi vecino.
Pues voy a ir a atacar esta página web de este chico a ver si mi vecino la visita.
Ya está.
Hombre, joder.
Vale, entiendo que lo que quieres decir es que le puede pasar a cualquiera.
Eso sí, eso sí, obviamente.
Eso sí, es que estoy de acuerdo.
Bueno, continuamos, ¿vale?
Continuamos.
¿Cómo pude darme más cuenta todavía que sí que era un ataque?
Hay un tema que es verdad que aquí sí que he echado falta en Vercell y es el hecho del monitoreo.
Que de hecho, yo pensaba que era gratuito y es que, y no gratuito, el monitoring hay que pagarlo.
Y no solo hay que pagarlo, sino que es carillo.
Es bastante caro.
Me hubiera gustado, para quien sepa, la monitorización es algo parecido a Datadoc, a también New Relic y todo esto.
Yo pensaba, no sé por qué, no sé por qué pensaba que sí que estaba gratuito, pero no.
Cuando llegas a monitoring te dice, venga, activalo.
Y para activarlo te cobran 9 dólares.
Y a partir, y los 9 dólares solo tiene como 250.000, 250.000 peticiones.
Aquí es donde en este tipo de cosas, cuando ya te das cuenta de, ostras, está muy bien Vercell cuando todo va bien, pero en algún momento, cuando tienes algún tipo de problema, de que alguien te meta aquí ataques.
De hecho, y no lo digo con mala fe, ni con mala leche, ni nada, pero me puse en contacto inmediatamente con Vercell y no me han contestado todavía.
Es verdad que yo no soy un cliente premium, ni mucho menos, solo estoy pagando 20 dólares al mes, pero les escribí, abrí un ticket al respecto, pues para ver si me podían ayudar, si habían detectado algo, si llego al final, al límite este, si realmente voy a tener que pagar y tal.
Y sinceramente no me han escrito de vuelta, no me han dicho absolutamente nada, nada de nada.
Que teniendo en cuenta que creo que han pasado ya más de 72 horas, la verdad aquí, en este caso, tampoco digo que me avisen a la hora, pero hostia, me parece que ha pasado suficiente tiempo.
¿Probaste a escribirle a Guillermo? No, a ver, no voy a pasar, no voy a ir directamente y me voy a aprovechar de eso para escribir directamente a una persona o a Gonzi y tal.
O sea, el Gonzi es, o yo lo considero amigo mío, pero no porque esté en Vercell y no voy a tirar de él, a no ser que sea absolutamente necesario en este caso.
Y al final es un problema que tengo yo con Vercell como empresa, para ver si me podían echar una mano, prefiero hacerlo por los canales oficiales como cualquier persona, porque no tengo que tener ningún trato de favor, ni mucho menos.
O sea, lo he hecho de esa forma. Con Guillermo, que es el CEO, también, yo lo considero, no mi amigo, porque no tengo tanto trato, pero sí un colega, que realmente, pues siempre que puedo, hablo con él de buenas,
pero preocupándome de otras cosas que no de qué puedo conseguir, no me quiero aprovechar de eso.
El joker aprovechando, friado, sí, totalmente. Bueno, os sigo explicando.
Trato desde como cliente y no como amigo. Efectivamente, efectivamente, que ya os digo, si hubiera sido algo muy, muy, muy, muy grave, a lo mejor sí lo hubiera hecho.
Tampoco os quiero decir, no, es que no sé qué. No, a ver, si hubiera sido increíblemente grave, sí que hubiera tirado de eso, pero tampoco quería llegar a ese nivel, ¿sabes?
Es decir, tampoco soy más especial que los cientos de miles de clientes que seguramente tienen y que también merecen ese trato, ¿no?
Bueno, total, entonces, paso todo esto. Ya os digo que, como podéis ver, ya tenemos aquí las mismas visitas ahora y ahora sí que ha bajado.
Pueden ser dos cosas, ya os digo yo, ¿eh? La primera cosa, que ha bajado también por el tema de un cambio que he hecho bastante importante, que ahora os explicaré,
y por otro, que a lo mejor también puede haber cesado el ataque. ¿Por qué? Porque como lo puse en modo protección, a lo mejor pues también ha quitado eso, lo que sea.
Pero bueno, ya veis que 876 gigas y fijaos que el impacto se ve clarísimo. Si le pongo aquí los últimos 14 días, vais a ver que desde que empezó un poquito esto,
que me lo hicieron un poquito de malas, ¿no? Pues fijaos que va bajando porque ya aquí, este día, el 28, por la noche, estuve intentando hacer algunos cambios
que sí que surtieron efecto, ¿vale? Y luego hice mayores cambios. Y los cambios, que ahora os comentaré, pues vais a ver que están enfocados en dos cosas, ¿vale?
Aquí podéis ver también el número de peticiones cacheadas y sin cachear y cómo han bajado. De hecho, el consumo aquí, el 97% del consumo del ancho de banda,
como podéis ver aquí arriba, era de la velada, un 10% de un proyecto desconocido, que ahora os explicaré cuál es, y ya estaba el resto.
Y ahora aquí, pues sí que se ve, pues, un 65%, normal, porque es bastante tocho, pero no tanto, ¿vale? A mí me pasó el mismo ataque con ese UGL, por poco llego a 100 gigas.
Claro, es que total, es que es normal, ¿no? Yo la verdad, ¿es seguro de decir esos cambios? Sí, a ver, os lo voy a decir, aunque me vuelvan a atacar y tal.
La idea, al final, es que podamos aprender de esto y que si os puede ayudar en que vosotros podáis mitigar este tipo de cosas, pues fantástico.
Y si no, pues incluso me podéis decir a mí ideas. Al final, la web de la velada es de código abierto y soy todo oídos de que hagáis mejoras en este aspecto, o sea, todo esto.
Al final, la idea de hacer este proyecto en comunidad también es no esconderos las cosas malas, como puede ser esto.
Por ahora no he pagado ni un duro, aunque potencialmente, pensad, haciendo cálculos, ¿vale? Haciendo cálculos.
Si hubiera llegado a esto, el peor día, que fueron 235 gigas, 235 gigas, pensad, 235 gigas en un mes son 7.000, 7 teras, ¿vale? 7 teras.
Entonces, esto, 7.050 entre 100 son 70. Por 40 dólares hubiera pagado 2.820 dólares en un mes. Hubiera pagado 2.800 dólares directamente, teniendo en cuenta que no hubiera ido a más, que podría haber ido a más.
Pero si lo hubiera dejado todo y hubiera seguido en el peor día el ataque, hubieran sido 2.800 dólares en un mes de hosting si no hubiéramos hecho absolutamente nada.
Para que nos hagamos una idea.
¿Pero no eres millonario? Pues no, Gutiok, no soy millonario. La verdad es que 2.800 dólares me vienen muy bien, muy bien.
Pero si tú eres millonario y a ti te sobran, pues me los puedes regalar y ya le daré yo uso como sea, ¿no?
Este fin de le mostré la web a toda la familia. ¿Puede ser eso? A ver, a no ser que tu familia sea una familia de conejos, con muchos conejos, pues no, no tiene por qué.
¿Qué alternativas a Vercell podemos usar? Vale, ahora vamos a ese punto. El tema de Vercell y ya está.
Un resumen rápido del ataque que te hicieron que me lo perdí. Vale, resumen rápido para la gente que ha llegado tarde.
Esta semana santa me llegó un correo de Vercell diciendo que el ancho de banda consumido por mi proyecto era ya de casi un tera, que es el límite.
¿Cuál es el problema? Bueno, el problema, amigos, es que una vez que pasas la capa de un tera, por cada 100 gigas te cobran 40 dólares.
A mí, sinceramente, así de buenas, me parece muy increíble. O sea, un número que no tiene sentido.
En mi opinión, mi más sincera opinión, me parece que si el plan pro, el plan pro de Vercell que incluye un tera cuesta 20 dólares, ¿vale?
O sea, fijaos aquí que es 20 dólares. Este plan de 20 dólares, si miramos por aquí, veréis eventualmente que incluye un tera.
20 dólares al mes. Yo creo que no tiene mucho sentido que entonces por cada 100 gigas extras te cobren 40.
Me parece una sangrada, sinceramente. Me parece una sangrada muy bestia. Pero bueno, eso ya es subjetivo.
Dicho esto, una vez que me di cuenta, mire dónde estaba el problema. Mirando los paths más que se habían pedido más,
pues podía ver que la velada, las imágenes de la velada, bueno, imágenes especialmente.
Si nos ponemos a contar las imágenes, claro, cada imagen 29 gigas, 25 gigas, 24 gigas, 24, 23, 22, 15, claro, las imágenes muy bestias.
De hecho, había imágenes. ¿Y cómo me di cuenta que era un ataque al 100%? Pues porque resulta que mirando algunas imágenes
es que había imágenes aquí que no mostrábamos en la web. Hay imágenes aquí que no mostramos en la web, pero que aún así alguien estaba haciendo las peticiones.
¿Por qué? Porque lo que estaba haciendo es, evidentemente, ir a por las imágenes, a por los recursos que más ocupaban
y hacer peticiones de forma indiscriminada para que subiese el bandwidth, la transferencia.
Lo que estuvo haciendo es, vale, con bots voy a buscar cuáles son las imágenes que más ocupan
y voy a estar ahí descargando a lo bestia y tal. Eso es lo que hizo. De hecho, lo sé seguro porque hay imágenes que no estamos utilizando en la web.
Esta no la utilizamos en la web. Esta no la utilizamos en la web. De forma indiscriminada, ¿qué quiere decir?
Pues que no paró de hacerlo. O sea, indiscriminada quiere decir que estuvo sacando, que no es que dijo, no, voy a parar en algún momento.
No, no, es que lo que hizo es, sin ningún tipo de diferenciación o selección o nada, lo que hizo es, a por todas las imágenes que más ocupen
y ya está ahí todo el rato, bam, bam, bam, bam. Si quieres podría ser discriminada, discriminada en el sentido de que fuesen las imágenes que más ocupaban.
Pero a partir de ahí fue indiscriminado, ¿vale? Entonces, lo tengo que confesar, no puedo más con esto, fui yo, sí, sí.
Bueno, pues si fuiste tuyo, pues nada, no pasa nada. La pregunta es por qué. Bueno, ¿por qué? Porque no lo sé, soy ya la persona que sea, pues que lo diga, ¿no?
Una vez que me di cuenta, ¿cómo me di cuenta también? Pues mirando los días y que había días que había levantado esto a lo bestia y ya está.
¿El atacante tiene bandwidth gratis? Bueno, es que tú tienes bandwidth gratis.
Al final, pensad que la transferencia de bajada suele ser mucho más barata que la de subida, o sea, la de enviar.
Por lo tanto, o sea, cuando tú, tú, tú como cliente ahora mismo, o sea, tú ahora mismo te pones a descargar internet entero
y no te va a venir la compañía de teléfono a pedirte explicaciones, ¿sabes? Te va a decir, bueno, igual si es muy bestia, ¿quién sabe?
Pero no suele pasar, no suele pasar de que te van a decir, oye, que es que has descargado 5.000 teras de información
con tu conexión de internet. No, porque se disipa muy fácilmente. Entonces, pues no vas a tener ningún tipo de problema.
Además, lo que puedes hacer muchas veces es como descargar el dato, pero no guardarlo en ningún sitio, ¿sabes?
¿No debería Vercell bloquear esos bots? ¿Hay algún hosting Q si lo haga?
Claro, yo creo que sí. Yo creo que sí, que Vercell debería bloquear mejor este tipo de cosas, ¿no?
Pero o detectarlas, o avisarte antes, o hacer algún tipo de cosa, ¿no?
Es lo que se llama tarifa plana, efectivamente. Al final es tarifa plana porque hay gente que a lo mejor utiliza mucho,
hay gente que utiliza poco, pero es indiferente de lo que hace, ¿no?
De Midu Developer Expert a Senior Security. No, tampoco soy nada de eso. De hecho, ya podéis ver.
¿Cómo paré el ataque? Vale, pues una vez que ya vimos el ataque y todo esto, ¿qué es lo primero que hice?
Lo primero que hice fue revisar rápidamente, eliminar las imágenes, eliminar las imágenes que estaban atacando más
y que no tenían ningún tipo de uso en la web. Eso fue lo primero que hice.
Dije, ostras, si me están atacando las imágenes estas PNG, que no las estamos utilizando para absolutamente nada,
lo que voy a hacer es eliminar estas imágenes. Mira, a ver si lo vemos por aquí.
Inner Conflict. Vale, esto ya es cuando lo hice. Eliminar las imágenes que no necesitaba.
¿Ves? Eliminar imágenes que no necesitaba, eliminar los vídeos del repositorio, eliminar el archivo este que no necesitamos.
Este archivo se lo habían descargado un montón. Eliminar todas las imágenes que no necesitamos.
Estuve mirando todas las imágenes que estábamos atacando ahí y que no necesitamos y todas las imágenes las quité.
Luego, lo que vi es, ¿cuáles son las imágenes que sí que necesitamos, pero más están atacando?
Estuve viendo por aquí y ves esta, por ejemplo, webp de este título. Este título sí que lo necesitábamos,
pero todavía no tenía el tiempo para sacarlo un CD ni tal. ¿Qué es lo que hice? Lo que hice fue optimizar todas las imágenes.
De hecho, lo que... A ver si encuentro... No, esto no es lo que hice. A ver... Esto.
Lo que hice fue buscar cuáles eran los archivos que más ocupaban en el proyecto.
Me puse a buscar y dije, vale, estos son los proyectos que más ocupan. Bueno, pues, o sea, estas son las imágenes que más ocupan.
Pues estas imágenes lo que voy a hacer es bajarles lo que más pueda el tamaño, ¿vale?
Para intentar opcionar, o sea, para intentar optimizar un poco y que le cueste más subir, ¿vale?
Eso fue lo segundo que hice. Una vez que ya hice eso, yo ya tenía clarísimo que lo que quería hacer era sacar todas las imágenes de ahí.
O sea, yo ya tenía claro, una vez que pasó esto, yo ya tenía clarísimo que lo que iba a querer, ¿veis?
Era eliminar todas las imágenes de proyecto. Fijaos que eliminé todas las imágenes.
Delete todas, todas las imágenes. Las WebP, todas. Todas, todas, todas. Las eliminé todas.
Todas las imágenes que veis aquí ya no están. ¿Por qué?
Porque lo que he hecho es mover todos los archivos estáticos, los he movido a Cloudflare.
¿Por qué? Y esa es la pregunta del millón.
De hecho, lo primero que hice para ver que todo iba bien fue mover Codilink a Cloudflare.
Ahora Codilink ya no lo tengo en Vercel. Primero, porque es un proyecto que también me estaba consumiendo 50 GB.
Claro, 50 GB porque también me lo estaban atacando. Y claro, pues digo, es que para que me lo ataquen, pues ya lo quito de aquí.
Total, lo puedo hospedar en Cloudflare. Lo voy a hospedar gratis, sin ningún tipo de problemas de transferencia.
De rendimiento va a ir súper bien, porque la verdad es que Cloudflare en tema de rendimiento, pues es brutal.
O sea, que no va a haber ningún tipo de problema. Y va a ser transparente para los usuarios.
Así que voy a probar primero con Codilink, porque así pues aprendo un poquito.
Y como podéis ver, ya lo tengo en Cloudflare.
Midu, A-W-S o así.
El que más te guste. Es que al final es un poquito, si te gusta más el yogur de oveja o el de vaca. Es bastante.
Entonces, ahora os explicaré por qué Cloudflare.
Os explicaré por qué Cloudflare.
Pero lo primero que hice, Codilink, que era el proyecto más fácil, más fácil que la velada.
Pues lo que hice fue, vale, pues voy a ponerlo ahí y así ya me quito esos 50 GB y evito que me ataque en Codilink.
Fue el primer proyecto que lo migré totalmente y así aprendí además sobre el proceso.
¿Por qué Cloudflare? Vale.
Lo primero que hice, yo ya tengo cosas en Cloudflare.
Yo ya utilizo algunas cosas de Cloudflare porque lo bueno que tiene el servicio de Cloudflare es que es bastante barato.
Bastante barato.
Y funciona muy bien en estos casos, justamente.
Por ejemplo, para que os hagáis una idea, yo el curso de Aprende JavaScript, este curso, yo tengo los vídeos hospedados en un servidor mío.
Y los vídeos suelen ser muy caros, muy caros.
Por ejemplo, veis este vídeo que además se ve bastante bien con el midú gordito, con el midú cachetón.
Entonces, este vídeo que se ve bastante bien y que tiene subtítulos y tal, pues a lo mejor ocupa 20 megas.
Yo de todo esto, con todos los vídeos, con todas las visitas que tiene esto, he pagado 0 euros.
0 euros.
¿Y por qué?
Pues básicamente porque Cloudflare tiene un servicio que se llama R2 que es brutal porque no solo es de alto rendimiento para archivos y objetos, sino que tiene 0 egress charges.
¿Qué significa esto?
Que tiene un coste de transferencia de 0 euros.
0 euros.
No importa, no importa si me viene ahora y me ataca con 80.000 millones de terabytes.
Me va, Cloudflare me va a cobrar 0 euros.
0.0.
¿Vale?
¿Qué es lo que cobra Cloudflare?
El pricing, que también tiene pricing, obviamente.
Pero para que os hagáis una idea, fijaos la diferencia.
Tengo aquí, aquí he subido ya las imágenes de la velada.
333 megas de imágenes.
Y lo interesante está aquí.
15.000 operaciones de clase B.
¿Qué significa esto?
Las operaciones de clase B son las operaciones de lectura.
Y de lecturas tenemos 10 millones de peticiones al mes.
Y a partir de ahí tú pagas por petición.
Y por cada millón, por cada millón, pagas 0.36.
La diferencia de esto es que, o sea, imaginaos, para que yo llegue a los 10 millones de requests,
o sea, me tienen que atacar muchísimo.
Pero es que aunque llegase y me hiciesen 50.000 millones de requests,
bueno, 50.000 millones sería mucho, pero aunque me hagan 50 millones de requests,
de 50 millones es que pagaría bastante poco.
Bastante poco.
O sea, pagaría 0 con, yo qué sé, 40 dólares.
40 dólares.
50 por 0,4, 20 dólares.
20 dólares pagaría.
¿Sabéis?
Entonces, 15.
Ah, bueno, pues igual son 15.
Bueno, no sé.
Pero el tema es que moviendo todos los estáticos en Cloudflare,
lo bueno que tengo con esto es que, bueno,
ya aunque haya alguien que diga me voy a descargar esta imagen constantemente,
no va a haber ningún tipo de problema.
Yo no voy a tener que preocuparme por la transferencia de datos.
Sí que me tengo que preocupar por la petición,
pero la petición es increíblemente barata.
Es mucho más caro.
Imaginad la transferencia de los datos,
que 40 dólares por 100 gigas es una burrada,
que una petición que no es nada.
Un millón de peticiones la estoy pagando a 0,40.
Un millón de peticiones, para que nos hagamos otra idea, ¿vale?
Pero si ponemos que esta imagen, mira, que es un vídeo,
que pongamos este, bueno, 3 megas.
3 megas si hacemos un millón de peticiones.
Un millón de peticiones para 3 megas, ¿vale?
Que sería, ¿cuántos gigas serían esto?
0,03, ¿no?
0,03.
Claro, un millón de peticiones para esto serían,
0,03, serían 30...
No, 30.000, o sea, 30.000 gigas.
30.000 gigas.
¿Serían 30.000 gigas?
¿O no?
A ver, 3 megas, ¿cuántos son?
A ver, ¿cuántos son 3 megas en gigas?
Son 3, 0,03, ¿no?
Ahora cargan la imagen, tardará más por la latencia.
Bueno, ahora diré que no.
Ahora diré que no, ¿por qué no?
Ahora diré que... ¿por qué no?
Vale, es esto.
0, ya decía yo, ¿eh?
0,03, vale.
Entonces son un millón, un millón, ¿vale?
Pues serían 3.000 gigas.
Claro, 3.000 gigas.
Imaginaos esto.
Imaginaos la diferencia.
Imaginaos la diferencia de esto.
O sea, es que es increíble la diferencia.
Es increíble.
Increíble.
Por cierto, It's Carlos, muchas gracias por regalar 5 suscripciones de la comunidad.
Te lo agradezco porque necesito comer para pagar el servidor.
Pero bueno, sí, las habilidades matemáticas han salido de chat totalmente.
3 teras.
Bueno, 3 teras, claro, 3 teras.
Pero imaginate eso, 3 teras.
3 teras.
3 teras.
Si por 100 gigas me pagaban 40 dólares.
O sea, que salen mucho, mucho más a cuenta.
Mucho, mucho, mucho más a cuenta.
Y eso que he pillado es el de 3 megas.
Pero tengo aquí un vídeo de 32 megas, por ejemplo, ¿no?
Es mucho más barato.
Mucho más barato y mucho más difícil que nada me ataque nada.
Y de hecho, otra cosa muy buena que tiene Cloudflare es que ya tiene un montón de mecanismos de seguridad que te pone por delante.
Que Bersel ya tiene, pero que en este caso a mí no me han servido.
Y en el tema de Cloudflare, pues ya sea incluso para la página, ya sea para un montón de cosas, ya tiene justamente mecanismo de defensa.
De hecho, es que Cloudflare es uno de los servicios que más utilizan justamente para defenderte de ataques de dos.
Así que, ¿y por qué Bersel sigue con esos precios?
Bueno, hay mucha gente que a mí me pregunta, no, ¿por qué Bersel utiliza estos precios?
Obviamente, lo primero, porque Bersel tiene que comer.
O sea, yo lo entiendo que Bersel, obviamente, tiene un servicio muy chulo.
A mí me gusta un montón.
Si es que lo corté y no lo quitaba valiente.
Pero creo que sí que es verdad que en este caso, cuando algo va un poco regulinchis...
Y es que os quiero enseñar una cosa.
Que vimos ya el otro día, pero lo quiero enseñar otra vez.
O sea, cuando algo te funciona así, claro, te quedas un poco como...
Dios mío, ¿sabes?
Entonces, esperaba que no me cobrase tanto, ¿no?
O que no me dejase tan tirado.
A eso, Ericksen, muy bien, joder.
Ahí está, que estén muy, muy, muy atentos.
Vale, pues fijaos aquí que hay una pestaña que se llama Egress Cost.
Estos son justamente los costes de transferencia de datos.
Y aquí, si lo ponéis a mirar y vais bajando...
Fijaos que Cloudflare está el número uno porque es gratuito.
Un tera, un tera de datos son gratis.
Lo pone gratis.
Entonces, tú vas bajando y puedes ver ahí que VH Cloud es gratis también.
Skyway, aquí cada uno va bajando.
Edsner es un dólar.
Esto puede tener más sentido.
Creo que tiene sentido un dólar.
Cinco dólares, bueno.
Cinco dólares, vale, bueno.
Pero fijaos que vamos bajando.
Y aquí tenemos el trinomio.
Los que tienen mejor experiencia de desarrollo, Netlify, Vercel y Render,
fijaos que son los que tienen el precio más alto.
Y es que Netlify, que por un tera extra de transferencia,
tienes que pagar 550 dólares.
Entonces, ahí es donde estás pagando la experiencia de desarrollo.
Ahí es donde estás pagando.
Y Vercel igual, 400 dólares, 400 dólares.
Entonces, ahí es donde estás pagando básicamente la experiencia de desarrollo.
Que a mí me encanta Vercel, Netlify, Render.
Me encantan esos servicios que...
Pero hay también un coste que hay que tener en cuenta muchas veces
que te puede pasar esto y te pueden destruir.
Alguien me decía también en el chat,
bueno, pero podrías haber desactivado la web.
Pero ¿cómo va a ser eso una alternativa?
¿Cómo va a ser una alternativa el hecho de, pues, vale,
pues cierro la web hasta el mes que viene?
Eso no tiene sentido, ¿sabes?
No puede ser que yo piense, voy a cerrar la página web.
Obviamente, si no me lo puedo permitir, la tendré que bajar.
O sea, tendré que cerrar pestaña y tal y ya está.
Pero no puedes hacer eso.
No es algo real.
Yo, sinceramente, os lo digo sin ningún tipo de actitud
y con todo mi buen cariño.
Yo creo que tanto Vercel como Netlify
tienen que revisar esos precios
porque no puede ser que a una persona como yo,
que tampoco es que tengamos de nuevo
unas visitas en la velada increíbles,
te pueda alguien con mala leche,
con malas intenciones, obviamente, ¿no?
Alguien con mala leche te puede hacer un ataque de estas
y te la puede liar en un fin de semana.
Te la puede liar.
Y estoy convencido que Vercel y Netlify,
y Netlify ya lo ha demostrado,
Vercel y Netlify, estoy seguro que no te lo cobrarían
cuando se demostrase que es un ataque.
Y aunque no sea un ataque.
Pero es que mi problema es, aunque no sea un ataque,
aunque sea un error humano,
¿cómo vas a hacer que una persona pueda tener,
de repente, se vaya un viernes al campo,
vuelva un lunes y pueda recibir una factura de 10.000 dólares?
Se supone que eso sí que lo puede tener a WS
porque es muy a bajo nivel.
A nivel de infraestructura,
que se supone que tú eres el responsable y tal,
pero lo que se le pide, yo creo,
que a servicios como Vercel, Netlify, Render y todo esto,
es que esos sustos no te los puedes permitir.
Que esa experiencia de desarrollo,
que tú estás ahí por la facilidad de dormir tranquilo,
¿sabes?
Y justamente yo creo que esto es una cosa
que todavía tienen que trabajar, ¿no?
Pero ellos solo te rentan el server.
Bueno, no, no solo te rentan el server.
Lo que vende Vercel no es el server.
Y te rentan el server.
Lo que te vende Vercel es esto que ves.
Que es la experiencia de desarrollo
de que todo va a ser mucho más fácil
de vivir,
de no preocuparte.
De hecho, muchas veces su lema es
que es complicado,
que solo te enfoques en el producto,
pero entonces no es verdad, ¿sabes?
Enfócate en el producto,
a entregar valor y tal,
pero entonces si de repente tienes un susto como este,
no te preocupas solo por el producto.
¿Sabéis lo que os quiero decir?
Es una IDE en la nube integrado.
Es mucho más fácil,
mucho más fácil de que ellos ganen mucho dinero.
Sí, bueno, yo creo que el problema es ese, ¿no?
Que creo que es normal que ganen.
Yo lo veo bien, que ganen más dinero,
que no sé qué, no sé cuánto.
Pero creo que sí que es importante
el hecho de que se pueda controlar esto
un poquito mejor, ¿eh?
Y usar Cores para que solo acepte peticiones internas.
Sí, no, o sea, vamos a tener que buscar ahora todavía.
Ahora, una vez que ya hemos arreglado esto,
pues lo que vamos a hacer es, pues,
buscar otras alternativas y todo esto.
Pero bueno, que solo para que lo supieras
un poco lo que a mí me ha pasado, ¿no?
¿Y qué tanto más complicado se desarrolla
bajo nivel la comparación con Vercel y Nellify?
A ver, es muy fácil.
Vercel y Nellify, la integración ya solo que tienes
en GitHub y todo esto, es muy fácil, ¿eh?
Estoy 200% de acuerdo a contigo.
Yo me he llevado sorpresas y solo con poco coste.
Claro, pero imagínate que de repente te pase esto.
El tema de la latencia.
Hay mucha gente que está preocupada porque dice,
bueno, claro, ahora, por ejemplo, en la velada,
fijaos que si miráis las imágenes,
y miramos aquí imágenes, veréis, no todas,
pero la mayoría de imágenes, como por ejemplo
este del Mariana, ¿veis?
Sale de cdn.lavelada.deb.
Entonces, hay gente que está, con razón,
preocupada por el tema de la latencia,
que sí que puede ser un problema,
pero en este caso, ¿qué es lo que hemos hecho?
Lo que vemos aquí, como podéis ver,
que ya hay algunos recursos que vienen de cdn,
la velada, ¿vale?
Lo que hacemos, fijaos que aquí ya la latencia,
es que no tiene tampoco una latencia muy bestia
comparada con otras imágenes.
Claro, las imágenes que tiene el suyo
o que están en ServiceWorker,
obviamente van a ser mucho más rápidas.
Pero lo bueno que tenemos aquí es utilizar
el link este de pre-connect, ¿vale?
Y ya arriba del todo, como ya sabemos
que todos nuestros recursos van a venir
de esta URL, lo que le vamos a decir es,
oye, quiero que en cuanto puedas,
nos hagas la pre-conexión,
en cuanto puedas, hagas la pre-conexión
a este dominio.
Entonces, ya cuando vaya a pedir los recursos
y las imágenes, cuando las encuentre y tal,
ya va a tener esto en cuenta
y ya va a hacer la pre-conexión antes.
Y por lo tanto, lo va a calentar
y va a ir bastante más rápido,
que no va a tardar tanto en hacerlo y ya está.
Así que esto te lo va a mitigar bastante,
no va a ser tan rápido como tenerlo
en tu propio servidor,
siempre va a haber un poquito de latencia,
pero es una cosa que te va a solucionar
bastante el problema.
Eso, gracias, eso tiene mucho sentido.
No, y eso se hace mucho,
ya no solo para esto,
esto lo podéis hacer para cualquier servicio
de terceros que podéis hacer, ¿eh?
Que podéis hacer y ya está, ¿eh?
Así que si tenéis un servicio de terceros
que tenéis que cargar un script y tal
para evitar la latencia,
podéis hacer esto
y así ya veréis que hay una mejora importante
cuando se tenga que descargar
el primer recurso,
que obviamente para los siguientes recursos
ya no va a tener problema, ¿no?
Yo no entiendo que en web públicas
como la de Hacienda y otras importantes
no tengan mecanismos anti-bot.
Bueno, igual es que no les importa y ya está, ¿no?
Así que nada, la verdad,
Cloudinary me hubiera costado también muy caro
porque yo no tengo tanto interés.
De hecho, Cloudflare,
por si os interesa,
Cloudflare tiene también un servicio de imágenes
que está muy bien de precio y tal
que se llama Cloudflare Image Optimization,
¿puede ser?
O Cloudflare Images, no me acuerdo.
Y no está mal de precio,
pero yo en mi caso no es tan importante
porque yo no quiero mejorar,
optimizar las imágenes y cosas así.
Y el problema es que es un poquito más cara,
obviamente,
porque al final como también lo que puedes hacer
es transformarlas,
pues va a ser más caro
que enviar directamente la imagen ya optimizada.
Fijaos aquí que transformaciones,
por cada mil transformaciones,
medio dólar.
Estas son transformaciones que se cachean,
¿vale?
Pero en este caso a nosotros,
pues no nos interesa,
ya las tenemos hechas y ya está.
Y en todo caso,
hacemos las imágenes de una ya optimizadas,
las subimos y ya está.
Aquí te dice,
por cada 100.000 imágenes que envía,
te cuesta un dólar.
Bueno,
pues yo creo que en este caso,
para nosotros no vale la pena,
¿vale?
Así que ahí es como lo hemos arreglado,
eso es lo que he tenido que hacer,
cómo me han atacado,
cómo me han intentado fuquear,
que puede ser que todavía me sigan fuqueando,
ya sabéis,
las ideas son bienvenidas para evitarlo,
pero desde aquí le envío un abrazo
a la persona que se ha entretenido
haciendo esto,
no pasa nada,
seguimos bien,
seguimos bien,
por ahora,
si no a las malas,
ya os digo que una cosa
que sí que me hubiera gustado,
no sé,
es que un poquito mejor
hubiera sido el hecho
de cómo contactar,
Versailles y tal,
todavía ni siquiera se han,
se han puesto en contacto conmigo,
la gente de Versailles,
aunque ha abierto el ticket,
pero bueno,
entiendo que también es un tema
de que sí,
que pueden tener mucho trabajo,
pero siendo que yo estoy pagando
realmente los 20 dólares,
sí que me ha sorprendido un poco
la falta de mejor soporte,
no sé,
me ha sorprendido,
¿veis?
Aquí lo tenéis,
aquí lo tenemos,
que excessive bandwidth usage
due to website attack
and seeking addition,
no sé qué,
hace tres días,
y desde hace tres días
no he recibido absolutamente nada,
no sé,
me ha sorprendido un poquito,
me esperaba a lo mejor
alguna respuesta,
alguna cosa,
tal,
¿te agobiaste en el momento?
¿Cómo gestionaste el estrés?
Muy buena pregunta,
¿me agobié?
No me agobié,
porque por suerte vi
que todavía estaba a tiempo,
eso sí que es verdad,
¿no?
Pero 20 dólares es el precio
de una hora de soporte,
eso es verdad,
FWID,
pero también es verdad que,
uno,
no solo he pagado 20 dólares,
sino que llevo años trabajando con Vercell,
pagando los 20 dólares al mes,
y que no solo he pagado 20 dólares,
sino que he pagado mucho más,
por ejemplo,
también soy cliente de Analytics,
que son 50 dólares al mes,
también he sido,
me he pasado de bandwidth,
de forma intencionada,
o en el Adven GS,
cuando tuvimos millones de visitas,
yo entendí con deportividad
que tenía que pagar de más,
y he pagado de más,
he tenido facturas de 60 dólares,
no pasa nada,
¿sabes?
O sea,
no he pagado solo 20 dólares una vez,
es que a lo largo del tiempo,
pues yo me lo puedo pensar un poco por encima,
pero a lo mejor,
pues ya llevo 2 o 2.500 dólares pagados,
o 2.000 dólares,
no lo sé,
me lo estoy inventando,
y a lo mejor es mentira,
pero que llevo más dinero de 20 dólares,
obviamente,
es la primera vez,
es la primera vez que pongo un ticket,
la primera,
o sea,
ahí lo tenéis,
está limpio,
mis casos están limpios,
o sea,
que no sé,
e igualmente,
da igual,
o sea,
da igual,
da igual que sea mi primer mes,
en este caso,
mi opinión,
con todo respeto,
pero no creo que a Bersel
le muevas aguja como cliente,
a ver,
con todo respeto,
no sé por qué dices,
como todo respeto,
como si estuviera insultando,
pero,
a ver,
que le muevas aguja como cliente,
no porque sea yo,
o sea quien sea,
pero yo lo que creo,
sinceramente,
es que Bersel,
una cosa muy buena que tenía,
o que siempre he visto,
es el soporte y la atención al cliente,
y en este caso,
a mí personalmente,
no se me ha dado,
entonces,
no sé,
yo creo que sí que todo cliente es súper importante,
sea anónimo,
no anónimo,
o lo que sea,
pero no hablo de Bersel,
hablo para cualquiera,
o sea,
así de claro lo digo,
¿no?
Entonces,
pues ese ha sido mi caso,
ya os digo,
que si encontrás alguna forma de arreglar o mejorar esto,
pues ya sabéis que podéis hacer una PR,
o me lo comentáis,
o lo que sea,
y ya está,
entonces te mandaste a Bersel,
no,
eso tampoco,
eso tampoco,
eso tampoco es,
hombre,
todos los clientes deben ser importantes,
independientemente de lo que pagan,
eso sí que estoy de acuerdo,
eso sí que estoy de acuerdo.
Gracias.