3 puntos por GN⁺ 2024-03-26 | 1 comentarios | Compartir por WhatsApp

La mayoría de las apps web pueden operar en un solo servidor

  • Siguiendo la escena del desarrollo web, da la impresión de que muchos sitios web y apps no necesitan una infraestructura compleja, y que la mayoría de los sitios y apps reciben menos de 10 solicitudes por segundo y, en días ocupados, alrededor de 50.
  • Tener endpoints en todo el mundo reduce la latencia, pero como es necesario acceder a los datos, aunque el cliente esté a 20 ms del endpoint, si la base de datos está a 200 ms de ese endpoint, no tiene mucho sentido.
  • El caché es útil, pero esto puede lograrse con un CDN o con simple caché HTTP. Si después de una actualización se publica el archivo nuevo en el CDN, en la mayoría de los casos todo el sitio puede operar desde el CDN.
  • Puede que algunos endpoints de API sean necesarios para funciones dinámicas, pero esto puede manejarse, por ejemplo, con JavaScript.
  • La mayoría de los proyectos pueden ejecutarse en contenedores sobre un VPS de $5, y eso incluso podría ser más rápido.

Opinión de GN⁺

  • Este artículo ofrece una mirada crítica al uso excesivo de infraestructura en el desarrollo de apps web. Señala que muchas apps web en realidad pueden operar suficientemente bien con una infraestructura simple, lo que recuerda a los ingenieros de software principiantes la importancia de evitar invertir recursos de más al construir infraestructura y de usar solo los recursos necesarios.
  • El artículo también enfatiza la importancia del caché y del CDN, que son elementos clave para mejorar el rendimiento de una app web. Esto sugiere que los desarrolladores web deberían considerar estrategias de caché para optimizar el rendimiento.
  • Cuando una app web es pequeña o no tiene mucho tráfico, puede ser más rentable considerar un solo servidor o servicios cloud simples en lugar de sistemas distribuidos complejos. Esto aplica especialmente a startups o proyectos pequeños.
  • El artículo recomienda a los desarrolladores web ser cuidadosos al elegir tecnologías y seleccionar una infraestructura acorde con las necesidades reales del proyecto. Esto ayuda a desarrollar soluciones que satisfagan necesidades prácticas sin dejarse arrastrar por las tendencias tecnológicas.
  • Desde una mirada crítica, este artículo puede no aplicar a grandes apps web o servicios que deben manejar tráfico a gran escala. Por lo tanto, es importante reconocer que la elección de infraestructura adecuada depende del tamaño y de los requisitos del proyecto.

1 comentarios

 
GN⁺ 2024-03-26
Comentarios en Hacker News
  • Un usuario confirmó que, cuando su proyecto llegó a la portada de Hacker News (HN), incluso un droplet de $5 de Digital Ocean manejó bien el tráfico. Sostiene que para la mayoría de los proyectos basta con usar respuestas asíncronas y un scheduler/cola para distribuir horizontalmente la carga a lo largo del tiempo. También critica que la nueva cultura de DevOps ha hecho más compleja la implementación de apps en la nube, y señala que no hace falta escalar en exceso software sencillo.

  • Standard Ebooks sirve una cantidad considerable de páginas vistas y libros electrónicos cada mes, y aun así maneja todo con un solo VPS de 4 GB, pese a haber llegado 3 o 4 veces a la portada de HN. Comenta que solo subió de 2 GB a 4 GB porque necesitaba más RAM para crear el ebook de 'Decline and Fall of the Roman Empire'; de lo contrario, un servidor de 2 GB también habría sido suficiente. Comparte un enlace a una publicación de blog al respecto.

  • Un usuario comenta que no hay razón para usar k8s salvo que hayas elegido hacerlo porque quieres aprender k8s, y se queja de que por culpa de k8s ni siquiera puede ver los logs del servidor. Afirma que un plan de $5 de Cloudflare habría bastado para manejarlo.

  • Se menciona que sqlite.org procesa más de 500,000 solicitudes HTTP al día y sirve alrededor de 200 GB de contenido usando un Linode de $40 al mes. Sostiene que, si tu app no maneja más solicitudes que sqlite.org, no necesitas pagar más.

  • Un usuario comparte que opera varios web apps con unas 10,000 solicitudes diarias usando Oracle Free Tier para correr el backend gratis, e integrando el frontend sin costo mediante Cloudflare Tunneling y Pages.

  • Menciona que ejecuta varias aplicaciones en un solo servidor de 5 euros, incluyendo un sitio web personal, dos servidores de juegos multijugador y frp para tunneling, y que piensa seguir agregando más hasta que el servidor ya no aguante. Añade que otras aplicaciones también funcionan bien en una VM de 5 euros.

  • Un usuario comparte una experiencia en la que pasó 4 veces más tiempo escribiendo archivos de Terraform que desarrollando funcionalidades reales. La empresa en cuestión recibía menos de 1,000 hits al día.

  • Un usuario menciona que un VPS de $4 al mes puede procesar miles de consultas por segundo y comparte un enlace relacionado.

  • Se señala que la mayoría de las web apps pueden ejecutarse en una sola máquina, pero que la mayoría de los clientes esperan casi 100% de tiempo de actividad, y una sola máquina no puede cumplir esos requisitos.

  • Un usuario que discrepa respecto a los web apps básicos que no necesitan sistemas complejos argumenta que, aunque empresas como FAANG también ejecutan servicios internos y dashboards en un solo binario, cuando el downtime se traduce directamente en pérdidas se termina reconociendo la necesidad de sistemas complejos.