Saltar al contenido principal
Tecnología

¿Qué es JAMstack y cómo puedo beneficiarme al usarlo?

3 min de lectura
¿Qué es JAMstack y cómo puedo beneficiarme al usarlo?

JAMstack es un acrónimo que significa JavaScript, APIs y Markup.

En pocas palabras, JAMstack es una nueva forma de construir sitios web y aplicaciones que ofrece mejor rendimiento, mayor seguridad, menor costo de escalamiento y una mejor experiencia para el desarrollador.

¿Por qué JAMstack?

JAMstack surgió como una solución para construir sitios web y aplicaciones sin depender del mantenimiento de uno o varios servidores web.

Imaginá que tenés un sitio web con mucho tráfico, y ese sitio está hecho con una tecnología como WordPress. Para que escale correctamente, agregarías un plugin para generar una versión cacheada de cada página que tus usuarios podrían visitar, y pondrías un CDN delante para distribuir globalmente ese contenido cacheado.

Está bastante bien, ¿no? Sí, pero — ¿es realmente necesario tener un servidor para renderizar markup? Esa es la pregunta que se hicieron las personas que le dieron JAMstack al mundo.

Bueno, tal vez no. Tal vez podrías renderizar las páginas de tu sitio web introduciendo un paso de build. Los datos se obtendrían de una API (o cualquier fuente de datos que quieras), y con eso podrías obtener un conjunto de archivos de markup pre-renderizados que podrían distribuirse globalmente usando un CDN.

Esa es la forma JAMstack.

¿Qué beneficios trae migrar al modelo JAMstack?

Los beneficios de usar JAMstack son los siguientes:

Seguridad

Solo tenés un conjunto de archivos que se sirven desde un CDN. La superficie de ataque se reduce drásticamente porque ya no tenés un punto de entrada a tus servidores. Sin servidor significa sin vulnerabilidades del lado del servidor que explotar.

Rendimiento

Archivos de markup pre-renderizados servidos desde un CDN siempre van a funcionar mejor que una solución de renderizado del lado del servidor. En SSR, el tiempo de renderizado del markup está atado a las capacidades de tu servidor web. Con JAMstack, tu contenido ya está construido y ubicado en el edge, listo para servirse instantáneamente.

Mantenimiento

No más servidores que cuidar — solo un conjunto de archivos estáticos. Sin parches de sistema operativo, sin actualizaciones de runtime, sin dolores de cabeza por escalamiento. Tu pipeline de deploy se convierte en un simple proceso de build y push.

Costos de infraestructura

Mantener una flota de servidores web es significativamente más caro que servir archivos desde un CDN. Con JAMstack, pagás por almacenamiento y ancho de banda en lugar de tiempo de cómputo, lo cual escala de manera mucho más económica a medida que crece el tráfico.

Entonces, ¿qué es JAMstack finalmente?

Podemos pensar en JAMstack como un framework de alto nivel — un estilo arquitectónico — que proporciona un conjunto de definiciones sobre cómo ejecutar, construir, mantener y distribuir sitios web y aplicaciones de una manera que escala excepcionalmente bien.

A diferencia de las arquitecturas monolíticas tradicionales donde el servidor maneja todo, desde la obtención de datos hasta el renderizado del markup, JAMstack desacopla estas responsabilidades. El paso de build maneja el renderizado, las APIs manejan la funcionalidad dinámica y el CDN se encarga de la distribución.

En los próximos posts, vamos a explorar cómo construir aplicaciones JAMstack usando generadores de sitios estáticos y soluciones de Headless CMS.

Etiquetas

JAMstack Arquitectura Web Performance