La .NET CONF 2024 acaba de terminar. Descubre las NOVEDADES de .NET 9 junto a los CAMBIOS que trae C# 13.
Puedes ver el contenido de este vídeo junto con su curso en el modo vídeo (similar a Udemy) si pulsas aquí.

Serverless no existe, simplemente es el ordenador de otro

09 Jun 2024 5 min (0) Comentarios

Como algunos sabréis he estado enfermo este fin de semana, pero más enferma se debió poner Jingna Zhang cuando vio su factura de Vercel al ver que su app se hizo viral.

zhang twitter

 

La app en cuestión es Cara, una app para artistas que permite subir imágenes y estructurar un portafolio. La gracia de esta app es que es exclusiva para el nicho, por ejemplo tiene una sección de ofertas de trabajo donde todas las ofertas son para artistas.

 

Todo iba bien hasta que la semana pasada la Cara se hizo viral en la Appstore de Apple y pasó de tener 40 mil usuarios a 650 mil en unos pocos días.

Por ahora todo está bien, de hecho es el sueño de cualquiera tener una app que se hace viral y puedes vivir de ella. 

 

El problema? Muy sencillo, serverless, pese a lo que su nombre indica, no significa que no hay un servidor, sino que es el servidor de otro el cual alquilas y escala hasta el infinito. 

Eso ha causado en este caso una factura de 96.280 USD en unos pocos días, pero este no es el único caso que hemos visto últimamente, tanto vercel, o servicios similares como pueden ser firebase o netlify muestran noticias similares prácticamente cada mes. 

 

 

1- Los costes reales de serverless

 

De primeras una solución serverless puede ser muy atractiva, por norma general es medianamente rápido desarrollar y administrar este tipo de aplicaciones, ya que es el proveedor de servicios quien se encarga de seguridad, actualizaciones y la mayoría de la configuración, permitiendote a ti como desarrollador centrarte únicamente en el código y la conectividad de tus aplicaciones con otras apps, databases, etc. 

 

Además, la forma de pago de aplicaciones serverless es por uso. Esto significa que si tu app no tiene uso, no pagas nada. Pero lo que también quiere decir es que si tienes mucho tráfico, el coste va a ser muy elevado, y eso es lo que le pasó a cara. Pasó de tener 40k usuarios a 650k por lo que los costos se dispararon. 

 

Las aplicaciones serverless están siendo muy populares últimamente en el entorno empresarial, pese a que son caras de mantener con mucho uso, si tu app es empresa a empresa los usos no suelen ser excesivos y suelen salir por un precio más o menos bajo y te ahorras toda la parte de mantenimiento. 

 

PEEEERO, si es una aplicación propia, quizá no sea la mejor idea.

 

 

1.1 - Costes añadidos de Vercel

 

En este post estoy hablando de Vercel, pues es el software que tiene que ver con la noticia, pero aplica con cualquier otra como Netlify, Firebase, etc. 

 

Estos softwares son una capa extra encima de un proveedor de servicios, como AWS/azure las cuales te lo dejan fácil, configurar AWS es complicado si no tienes experiencia y Vercel te permite centrarte únicamente en lo importante, la lógica de tu aplicación. 

 

El punto es que estas aplicaciones tienen que ganar dinero de alguna manera, por lo que cargan dinero extra al coste del proveedor de servicios de la nube.

 

vercel aws you

 

2 - Alternativas a serverless

Si bien es verdad que Vercel te permite configurar un límite económico el cual una vez lo pasas la app deja de funcionar, esto no es una solución ideal.

En mi opinión la solución ideal es dejarnos de serverless y dejar eso a aquellas empresas que de verdad necesitan escalar hasta el infinito en los picos de tiempo. Lo mejor que podemos hacer es contratar un servidor de los de toda la vida (VPS).

 

Un servidor web vale muy poco, especialmente en sus rangos más bajos, donde lo peor que te puede pasar si tu app se hace viral es que deje de funcionar, lo cual, en mi opinión es una mejor opción a una factura de casi 100k USD. 

 

Yo siempre he sido muy partidario de los VPS, debido a su coste fijo y sin sorpresas. De hecho mi blog está en uno de ellos, yo pago 10 euros al mes y tengo varias aplicaciones además del blog y la base de datos, y si que es verdad que recibo menos de 6 mil visitas diarias, con este servidor en teoría (basándome en las estadísticas) tengo capacidad para multiplicar por 15 o incluso 20 ese uso.

precio ovh

NOTA: Imagen de ovh.

 

Con eso estamos hablando de un servidor pequeño, 10 euros al mes en verdad es nada. Ahora imagínate que subes a uno de 300 euros, o incluso 400.

Estamos hablando de 48 vcpus y 190 gb de ram, la cantidad de hardware que puedes comprar/alquilar con los 96 mil euros de la factura de vercel es casi infinita. 

precio hetzner

Esos 350euros deberían ser suficientes para los 65 mil usuarios que tenía la app antes de hacerse viral, y sobrar para muchos más. Pero en el peor de los casos únicamente tienes que comprar uno, dos, o 10 mas y poner un balanceador de carga delante lo cual siempre va a ser más barato que la locura de factura que le llegó a esta persona. 

 

Si que es cierto que en el caso de un VPS tienes que configurarlo todo, desde el proxy inverso, a la propia app, pero es un costo que yo personalmente estoy dispuesto a pagar. 

Enlace a Digital Ocean.

 

Nota: Aquí tienes una lista de posts sobre cómo configurar una app en un servidor linux con sql, proxy inverso, etc.

 


Uso del bloqueador de anuncios adblock

Hola!

Primero de todo bienvenido a la web de NetMentor donde podrás aprender programación en C# y .NET desde un nivel de principiante hasta más avanzado.


Yo entiendo que utilices un bloqueador de anuncios como AdBlock, Ublock o el propio navegador Brave. Pero te tengo que pedir por favor que desactives el bloqueador para esta web.


Intento personalmente no poner mucha publicidad, la justa para pagar el servidor y por supuesto que no sea intrusiva; Si pese a ello piensas que es intrusiva siempre me puedes escribir por privado o por Twitter a @NetMentorTW.


Si ya lo has desactivado, por favor recarga la página.


Un saludo y muchas gracias por tu colaboración

© copyright 2024 NetMentor | Todos los derechos reservados | RSS Feed

Buy me a coffee Invitame a un café