SlideShare una empresa de Scribd logo
RENDERIZANDO
LA WEB
DEL 2020.
Backend Team Lead en Cloud District
Amante de las buenas prácticas y el desarrollo
web
Bloguero tecnológico en adrianalonso.es
Interesado en gestión de equipos y
Management 3.0
En Twitter soy @alonsus91
backend
team lead en
cloud district
¿Quién soy? ...
Server Side Rendering
(SSR)
NestJS + Nunjucks
¿Qué vamos a ver? .
Client Side Rendering
(CSR)
Create React App
Rehydration
NextJS
Prerendering
GatsbyJS
Como desarrolladores de software, nos enfrentamos
a decisiones que afectan a toda la arquitectura.
¿Qué estrategia de renderizado usamos en nuestro
proyecto y quién es el responsable?
Analizar la estrategia adecuada teniendo en cuenta
requisitos como el performance y coste.
Arquitectura .
Glosario de Términos ...
TTFB (Time to First Byte)
El tiempo entre que
pinchas un enlace y
el primer byte de
contenido llega al
navegador
FP (First Paint)
El tiempo que tarda
en pintarse el primer
píxel que haga visible
la web al usuario
FCP (First Contentful
Paint)
El tiempo que tarda en
ser completamente
visible el contenido
que el usuario ha
solicitado
TTI (Time to Interactive)
El tiempo que tarda
una web en ser
completamente
interactiva
Suele ser el modelo de Webs
Tradicionales y el renderizado de CMSs
clásicos como Wordpress o Drupal.
Esta estrategia produce un First Paint
y un First Contentful Paint muy rápidos.
Generalmente tiene un Time to
Interactive bajo, ya que no requieren
de mucho javascript.
Suele tener un Time to First Byte bajo,
debido al proceso pesado de
renderización. Se solventa con HTTP
Caches.
Renderizamos el HTML
completamente en el
lado servidor
Server Side
Rendering .
Server Side
Rendering .
DEMO 1
NestJS + Nunjucks
Client Side
Rendering .
Comúnmente conocidas como
Single Page Applications
Toda la lógica de recuperación de
datos, creación de plantillas y
enrutamiento es responsabilidad del
frontend.
Problemas de rendimiento en
dispositivos móviles.
Solventados por Code Splitting y
estrategias de LazyLoad
Renderizamos el HTML
completamente en el
lado cliente
Client Side
Rendering .
El tipo de aplicaciones con esta
estrategia pueden ser Paneles de
administración, Aplicaciones
Corporativas, PWA...
El requisito principal suele ser
interacción buena y fluida pese a una
carga inicial de todos los recursos
javascript.
Se apoyan en soluciones de caché en
cliente como Local Storage o Service
Workers.
Rápido TTFB y lento TTI.
Renderizamos el HTML
completamente en el
lado cliente
Client Side
Rendering .
DEMO 2
Create React App
Las peticiones son manejadas
por el servidor que renderiza
completamente el HTML.
Una vez renderizada la capa
javascript se monta encima del
HTML resultante mediante la
Rehydration.
Impacto significativo en el TTI,
mejora mucho el FP.
Se solventa con la rehidratación
progresiva.
Rehydration .
Enfoque que intenta
coger lo mejor de los
dos mundos: SSR y CSR
Rehydration .
DEMO 3
NextJS
Prerendering .
el renderizado ocurre en
la etapa de build,
también conocidos como
JAMstack Sites
Ofrece un FP y un FPC muy
rápidos, ya que el site ya está
prenderizado y servido
rápidamente desde una CDN.
Produce un archivo HTML
separado por cada URL. Desafío
cuando es difícil predecir las urls
con antelación. Builds
Incrementales
Existen muchas soluciones de
renderizado estático para
implementar esta estrategia:
NextJS, Nuxt, Hugo, Gatsby.
Prerendering .
Alta Seguridad: reduce las áreas
de ataque al generar el site, sin
depender de llamada al servidor.
Barato y escalable: despliegues
sencillos de build estático, HTML
+ CSS + JS. Solo coste de
almacenamiento y no de
computo.
Apoyado en el boom de
headless cms,:
Strapi, Contentful, Prismic.
el renderizado ocurre en
la etapa de build,
también conocidos como
JAMstack Sites
Prerendering .
DEMO 4
GatsbyJS
Arquitectura
desacoplada
Altamente escalable y
para proyectos de todos
los tamaños
Gran velocidad y
experiencia de
usuario
Soluciones E-commerce .
https://gatsbylius.com/
Caso de Éxito: Zenteo, transformando el servicio de asistencia en carretera.
Desarrollamos la plataforma tecnológica
que permite al usuario acceder a
información sobre el modelo de su batería
de coche a través de la matrícula de su
automóvil y ofrecer un servicio de
recambio a domicilio.
UX + UI: prototipado
Desarrollo de plataforma integral: Web, Panel
de gestión Admin y App de gestión de operarios
Desarrollo en ReactJS con el framework NextJS
Generación de landings de baterías mediante
estrategia de JAMStack
SEO y SEM
Resultados
Lighthouse .
Workflow
Frontend
Developer
Code
Repository
Continuous
Integration
Live Web
Headless
CMS
Content
Editor
GIT PUSH
CI WORKFLOW
APP DEPLOY
WEBHOOK TRIGGER NEW CONTENT
FETCH CONTENT
Server Side Rendering
(SSR)
Conclusión .
Client Side Rendering
(CSR)
Rehydration
Prerendering
BUSCAR EL EQUILIBRIO
GRACIAS .

Más contenido relacionado

PDF
Kit para crear un Sitio Web Móvil asombroso!
PPTX
Desarrollos de aplicaciones móviles con tecnologías web
PPT
Imagina Upna 2010
PDF
Presentación Softeng Portal Builder - RoadShowCMS en Azure
PPTX
Nuevas formas de pensar en datos con LINQ y Visual Studio 2008
PDF
Programación Reactiva, Javascript Isomorfo y Meteorjs !
PPTX
TenerifeDev - Desarrollando WebApps en la nube
PPTX
DotNetNuke - CMS y plataforma de aplicaciones en Windows Azure
Kit para crear un Sitio Web Móvil asombroso!
Desarrollos de aplicaciones móviles con tecnologías web
Imagina Upna 2010
Presentación Softeng Portal Builder - RoadShowCMS en Azure
Nuevas formas de pensar en datos con LINQ y Visual Studio 2008
Programación Reactiva, Javascript Isomorfo y Meteorjs !
TenerifeDev - Desarrollando WebApps en la nube
DotNetNuke - CMS y plataforma de aplicaciones en Windows Azure

Similar a Renderizando la web del 2020 (20)

PPTX
Atraer, Convertir, Sostener Claves para la rentabilidad de un E-commerce
PPTX
Cloud computing (Computacion en la nube) y seo (Posicionamiento Web).
PPTX
Dinamicas
PDF
Front end
PPTX
La importancia del frontend y backend en un proyecto
PDF
Optimización de aplicaciones web con base de datos NoSQL In-Memory
PPTX
cloud computic y seo
PDF
Introducción al Desarrollo Web - Argentina Programa
PDF
(25.03) RUN 09 - Sesiones Desarrollo - SI 2.0
PPTX
RoadShow-Azure-PartnersMicrosoft-Nov-2010-Caso de éxito de Softeng Portal Bul...
PDF
MANUAL DE COMPUTACION EN LA NUBE, NIVEL DE RESPONSABILIDAD
PDF
Instalacion adobe dream weaver
PDF
Clase 1 Introducción al Desarrollo Web
PPTX
038 k2 b-tools_actualidad_y_proximos_pasos
PPTX
5-Unidad 2: Diseños de Vista-2.2 Para Web
PPT
Temas Relacionados Web 2
PDF
200405 - Aplicaciones Web
PPTX
5-Unidad 2: Diseño de Vista-2.2 Para Web
Atraer, Convertir, Sostener Claves para la rentabilidad de un E-commerce
Cloud computing (Computacion en la nube) y seo (Posicionamiento Web).
Dinamicas
Front end
La importancia del frontend y backend en un proyecto
Optimización de aplicaciones web con base de datos NoSQL In-Memory
cloud computic y seo
Introducción al Desarrollo Web - Argentina Programa
(25.03) RUN 09 - Sesiones Desarrollo - SI 2.0
RoadShow-Azure-PartnersMicrosoft-Nov-2010-Caso de éxito de Softeng Portal Bul...
MANUAL DE COMPUTACION EN LA NUBE, NIVEL DE RESPONSABILIDAD
Instalacion adobe dream weaver
Clase 1 Introducción al Desarrollo Web
038 k2 b-tools_actualidad_y_proximos_pasos
5-Unidad 2: Diseños de Vista-2.2 Para Web
Temas Relacionados Web 2
200405 - Aplicaciones Web
5-Unidad 2: Diseño de Vista-2.2 Para Web
Publicidad

Último (20)

PDF
fulguracion-medicina-legal-418035-downloable-2634665.pdf lesiones por descarg...
PPTX
Seminario de telecomunicaciones para ingeniería
PDF
Matriz_Seguimiento_Estu_Consult_2024_ACT.pdf
PDF
Módulo-de Alcance-proyectos - Definición.pdf
PPTX
Curso Corto de PLANTA CONCENTRADORA FREEPORT
PDF
presentacion sobre los polimeros, como se conforman
PPTX
clase MICROCONTROLADORES ago-dic 2019.pptx
PPTX
Gestion de seguridad y salud ocupacional.pptx
PPTX
MODULO 2. METODOLOGIAS PARA ANALISIS DE RIESGOS 2da Parte.pptx
PPTX
MARITIMO Y LESGILACION DEL MACO TRANSPORTE
PDF
Oficio SEC 293416 Comision Investigadora
PDF
Curso Introductorio de Cristales Liquidos
PDF
Informe Comision Investigadora Final distribución electrica años 2024 y 2025
PPTX
CAPACITACIÓN DE USO ADECUADO DE EPP.pptx
PDF
Copia de Presentación Propuesta de Marketing Corporativo Blanco y Negro.pdf
PDF
1132-2018 espectrofotometro uv visible.pdf
PPT
PRIMEROS AUXILIOS EN EL SECTOR EMPRESARIAL
PPTX
Software para la educación instituciones superiores
PDF
TESTAMENTO DE DESCRIPTIVA ..............
PDF
Sustitucion_del_maiz_por_harina_integral_de_zapall.pdf
fulguracion-medicina-legal-418035-downloable-2634665.pdf lesiones por descarg...
Seminario de telecomunicaciones para ingeniería
Matriz_Seguimiento_Estu_Consult_2024_ACT.pdf
Módulo-de Alcance-proyectos - Definición.pdf
Curso Corto de PLANTA CONCENTRADORA FREEPORT
presentacion sobre los polimeros, como se conforman
clase MICROCONTROLADORES ago-dic 2019.pptx
Gestion de seguridad y salud ocupacional.pptx
MODULO 2. METODOLOGIAS PARA ANALISIS DE RIESGOS 2da Parte.pptx
MARITIMO Y LESGILACION DEL MACO TRANSPORTE
Oficio SEC 293416 Comision Investigadora
Curso Introductorio de Cristales Liquidos
Informe Comision Investigadora Final distribución electrica años 2024 y 2025
CAPACITACIÓN DE USO ADECUADO DE EPP.pptx
Copia de Presentación Propuesta de Marketing Corporativo Blanco y Negro.pdf
1132-2018 espectrofotometro uv visible.pdf
PRIMEROS AUXILIOS EN EL SECTOR EMPRESARIAL
Software para la educación instituciones superiores
TESTAMENTO DE DESCRIPTIVA ..............
Sustitucion_del_maiz_por_harina_integral_de_zapall.pdf
Publicidad

Renderizando la web del 2020

  • 2. Backend Team Lead en Cloud District Amante de las buenas prácticas y el desarrollo web Bloguero tecnológico en adrianalonso.es Interesado en gestión de equipos y Management 3.0 En Twitter soy @alonsus91 backend team lead en cloud district ¿Quién soy? ...
  • 3. Server Side Rendering (SSR) NestJS + Nunjucks ¿Qué vamos a ver? . Client Side Rendering (CSR) Create React App Rehydration NextJS Prerendering GatsbyJS
  • 4. Como desarrolladores de software, nos enfrentamos a decisiones que afectan a toda la arquitectura. ¿Qué estrategia de renderizado usamos en nuestro proyecto y quién es el responsable? Analizar la estrategia adecuada teniendo en cuenta requisitos como el performance y coste. Arquitectura .
  • 5. Glosario de Términos ... TTFB (Time to First Byte) El tiempo entre que pinchas un enlace y el primer byte de contenido llega al navegador FP (First Paint) El tiempo que tarda en pintarse el primer píxel que haga visible la web al usuario FCP (First Contentful Paint) El tiempo que tarda en ser completamente visible el contenido que el usuario ha solicitado TTI (Time to Interactive) El tiempo que tarda una web en ser completamente interactiva
  • 6. Suele ser el modelo de Webs Tradicionales y el renderizado de CMSs clásicos como Wordpress o Drupal. Esta estrategia produce un First Paint y un First Contentful Paint muy rápidos. Generalmente tiene un Time to Interactive bajo, ya que no requieren de mucho javascript. Suele tener un Time to First Byte bajo, debido al proceso pesado de renderización. Se solventa con HTTP Caches. Renderizamos el HTML completamente en el lado servidor Server Side Rendering .
  • 7. Server Side Rendering . DEMO 1 NestJS + Nunjucks
  • 8. Client Side Rendering . Comúnmente conocidas como Single Page Applications Toda la lógica de recuperación de datos, creación de plantillas y enrutamiento es responsabilidad del frontend. Problemas de rendimiento en dispositivos móviles. Solventados por Code Splitting y estrategias de LazyLoad Renderizamos el HTML completamente en el lado cliente
  • 9. Client Side Rendering . El tipo de aplicaciones con esta estrategia pueden ser Paneles de administración, Aplicaciones Corporativas, PWA... El requisito principal suele ser interacción buena y fluida pese a una carga inicial de todos los recursos javascript. Se apoyan en soluciones de caché en cliente como Local Storage o Service Workers. Rápido TTFB y lento TTI. Renderizamos el HTML completamente en el lado cliente
  • 10. Client Side Rendering . DEMO 2 Create React App
  • 11. Las peticiones son manejadas por el servidor que renderiza completamente el HTML. Una vez renderizada la capa javascript se monta encima del HTML resultante mediante la Rehydration. Impacto significativo en el TTI, mejora mucho el FP. Se solventa con la rehidratación progresiva. Rehydration . Enfoque que intenta coger lo mejor de los dos mundos: SSR y CSR
  • 13. Prerendering . el renderizado ocurre en la etapa de build, también conocidos como JAMstack Sites Ofrece un FP y un FPC muy rápidos, ya que el site ya está prenderizado y servido rápidamente desde una CDN. Produce un archivo HTML separado por cada URL. Desafío cuando es difícil predecir las urls con antelación. Builds Incrementales Existen muchas soluciones de renderizado estático para implementar esta estrategia: NextJS, Nuxt, Hugo, Gatsby.
  • 14. Prerendering . Alta Seguridad: reduce las áreas de ataque al generar el site, sin depender de llamada al servidor. Barato y escalable: despliegues sencillos de build estático, HTML + CSS + JS. Solo coste de almacenamiento y no de computo. Apoyado en el boom de headless cms,: Strapi, Contentful, Prismic. el renderizado ocurre en la etapa de build, también conocidos como JAMstack Sites
  • 16. Arquitectura desacoplada Altamente escalable y para proyectos de todos los tamaños Gran velocidad y experiencia de usuario Soluciones E-commerce . https://gatsbylius.com/
  • 17. Caso de Éxito: Zenteo, transformando el servicio de asistencia en carretera. Desarrollamos la plataforma tecnológica que permite al usuario acceder a información sobre el modelo de su batería de coche a través de la matrícula de su automóvil y ofrecer un servicio de recambio a domicilio. UX + UI: prototipado Desarrollo de plataforma integral: Web, Panel de gestión Admin y App de gestión de operarios Desarrollo en ReactJS con el framework NextJS Generación de landings de baterías mediante estrategia de JAMStack SEO y SEM
  • 20. Server Side Rendering (SSR) Conclusión . Client Side Rendering (CSR) Rehydration Prerendering BUSCAR EL EQUILIBRIO