Los CDNs NO SIRVEN..

midulive
23 Sept 202413:37

Summary

TLDRThe script explores the challenges of using CDNs for dynamic websites, focusing on cache consistency and performance issues. It discusses how CDNs work well for static content, but struggle with dynamic sites that frequently update data, like e-commerce or real-time applications. The developer's attempts to manage cache, including using headers and client-side JavaScript, often lead to poor user experience and SEO performance. It highlights modern solutions like partial prerendering and server-side islands, which combine static and dynamic elements, offering better performance for dynamic sites in today's web environment.

Takeaways

  • 😕 CDN is not effective for dynamic sites because cache management becomes inconsistent.
  • 🚫 CDN cache control makes it hard to ensure data consistency, leading to slow cache clearing.
  • 🧑‍💻 Developers try to manage CDN caching with headers like 'vary', but this still results in static behavior for dynamic data.
  • 🌀 Using JavaScript to solve client-side issues often leads to slower page loads, layout shifts, and performance problems.
  • 🚩 Dynamic sites, such as e-commerce or real-time apps like Airbnb, can't be easily cached with CDN due to constant data updates.
  • ⚙️ Modern approaches like streaming and granular caching, rather than caching the entire page, are seen as better solutions.
  • 🌐 Static sites or sites with little dynamic content can benefit from CDNs, making them faster and cheaper to serve.
  • 💡 A hybrid approach (combining static and dynamic rendering) is becoming popular in frameworks like Next.js and Astro.
  • 📊 Revalidating static content when needed and dynamically serving user-specific data (e.g., carts, recommendations) is essential for balancing performance and freshness.
  • 🔥 CDNs can work, but the challenge lies in handling complex, dynamic elements in real-time applications, requiring smarter caching strategies.

Q & A

  • Why do CDNs not work well for dynamic sites?

    -CDNs are optimized for delivering static content by caching and distributing it globally. However, when a site is dynamic, with frequent data changes or user-specific content, CDNs struggle to maintain consistency. Developers may need to constantly clear the cache, leading to delays and inconsistencies.

  • What issues arise when developers use CDNs with dynamic content?

    -Developers often face cache invalidation problems, where users might see outdated data. Clearing the cache is slow and unreliable, which can cause users to receive inconsistent data, especially if they need real-time information like updates to their own actions or writings.

  • What is the role of cache control, and why is it problematic for dynamic content?

    -Cache control helps manage how content is cached and updated across CDNs. For dynamic content, cache control can become a burden because it forces developers to manually clean or refresh the cache, which is inefficient and may lead to inconsistent data being served to users.

  • How does moving dynamic rendering to the client affect performance?

    -Shifting rendering to the client can lead to performance degradation, causing issues like layout shifts, increased loading times (with spinners), and poor web vitals. This negatively impacts both user experience and SEO, as the site becomes slower and less responsive.

  • What is 'streaming' and 'granular caching,' and how do they help solve CDN-related problems?

    -Streaming and granular caching involve sending only the necessary dynamic parts of a page to the client while keeping the static parts cached. This hybrid approach allows dynamic content to be updated more efficiently without having to clear the entire cache, thus improving both performance and consistency.

  • Why is ESI (Edge Side Includes) mentioned, and how does it work in this context?

    -ESI is a technique that allows dynamic content to be embedded within otherwise static pages, enabling more granular cache control. It helps solve the problem of mixing static and dynamic content by allowing different cache rules for different parts of the page.

  • Why do CDNs work well for static sites but struggle with dynamic ones?

    -CDNs excel at distributing static content, such as blog posts or marketing pages, because this content rarely changes. However, for dynamic sites, like e-commerce platforms or real-time applications, frequent data updates make caching much more complex and difficult to manage.

  • What are 'server islands' or 'partial prerendering,' and how do they benefit dynamic sites?

    -Server islands and partial prerendering refer to strategies where only certain parts of a page are rendered dynamically while the rest is served statically. This allows developers to balance the performance benefits of static caching with the need for real-time updates for dynamic content.

  • How does Next.js's 'partial prerendering' feature address the challenges of dynamic content?

    -Next.js's partial prerendering allows developers to mix static and dynamic content within the same page. Static sections of a page can be cached and served quickly, while dynamic parts (e.g., user-specific data) can be rendered on demand, improving both performance and user experience.

  • Why is the 'static versus dynamic' debate significant for developers today?

    -As more websites incorporate dynamic features like personalized content or real-time updates, developers need to find the right balance between static and dynamic rendering. This debate is crucial because it impacts site performance, scalability, and the overall user experience.

Outlines

00:00

⚙️ Why CDNs Struggle with Dynamic Sites

This paragraph explains why CDNs (Content Delivery Networks) do not work well with dynamic sites. The site in question uses server-side rendering and a database, and while developers try to implement caching and CDNs, dynamic content causes issues. Clearing the cache becomes slow and unreliable, leading to inconsistent data. Developers attempt various workarounds, like using JavaScript on the client side, but this results in slower sites with layout shifts and performance issues. The solution is granular caching and streaming rather than caching the entire page, which maintains data consistency and performance.

05:01

📊 Static vs Dynamic Content in Business Applications

Here, the focus shifts to how static content is useful for some websites but falls short for business sites like e-commerce platforms (e.g., Airbnb). Static sites can be cached easily, but dynamic data, such as user reviews or product updates, requires constant revalidation. Developers must strike a balance between caching static parts and dynamically rendering others, like product recommendations. The paragraph highlights how dynamic content complicates the caching process and points to the importance of finding hybrid solutions that mix static and dynamic rendering.

10:02

🌐 CDN Limitations in Highly Dynamic Webpages

This section elaborates on the limitations of CDNs in handling highly dynamic websites like online stores or real estate platforms. It explains that caching dynamic content like real-time search results or price updates is impractical, as the data frequently changes. Developers must revalidate too often, defeating the purpose of caching. The paragraph emphasizes that CDNs are not a one-size-fits-all solution, especially for pages with mixed dynamic and static elements. It concludes by supporting newer approaches like server islands or hybrid static and server-side rendering to optimize performance and reduce client-side issues.

Mindmap

Keywords

💡CDN (Content Delivery Network)

A CDN is a network of servers distributed globally to deliver content to users more efficiently. In the video, the speaker discusses how CDNs work well for static content but face challenges with dynamic content, especially when frequent updates and personalized data are involved. The speaker argues that while CDNs are great for distributing static resources, they struggle with the demands of modern, dynamic websites.

💡Dynamic Content

Dynamic content refers to web content that changes frequently and is often user-specific, such as personalized recommendations, user-generated content, or live updates. In the video, the speaker highlights how dynamic content poses challenges for CDNs because caching becomes unreliable when data changes often, making it difficult to maintain consistency and performance.

💡Cache

A cache stores data temporarily to improve access speed. The video explains how developers use caching mechanisms to reduce load times by storing static versions of content. However, with dynamic content, cache invalidation becomes a problem, leading to outdated or inconsistent data being served to users, especially when they expect real-time updates.

💡Cache Invalidation

Cache invalidation is the process of removing outdated data from the cache to ensure that users receive the most up-to-date content. The speaker discusses how cache invalidation can be slow and unreliable when dealing with dynamic websites, causing issues like users seeing old data, which impacts user experience negatively.

💡JavaScript Rendering

JavaScript rendering refers to the process where content is generated on the client side using JavaScript, as opposed to being rendered on the server. In the video, the speaker criticizes the reliance on client-side JavaScript rendering to manage dynamic content, pointing out that it can lead to slower load times, UI issues like layout shifts, and poor SEO performance.

💡SSR (Server-Side Rendering)

Server-Side Rendering is a technique where content is generated on the server and sent as fully rendered HTML to the client. The speaker suggests SSR as a solution for handling dynamic content, arguing that it can provide faster initial load times and better SEO than client-side rendering, while still allowing dynamic elements to be updated.

💡Consistency

Consistency refers to ensuring that data presented to users is always up-to-date and accurate. In the video, the speaker emphasizes the difficulty of maintaining data consistency when using caching and CDNs for dynamic content, as outdated data can be served to users due to delayed cache invalidation, which leads to a poor user experience.

💡Partial Prerendering

Partial prerendering is a method of generating parts of a web page in advance while keeping other parts dynamic. The video references this approach, particularly in the context of Next.js, as a solution to the challenges of combining static and dynamic content on the same page. This allows certain sections to be cached, while other parts can update dynamically.

💡Streaming

Streaming in this context refers to the process of sending dynamic data to the client in real-time without needing to reload the entire page. The speaker discusses how streaming data and granular caching can help overcome the limitations of static caching for dynamic content, allowing web applications to provide a faster and more responsive user experience.

💡Web Vitals

Web Vitals are a set of metrics developed by Google to measure the performance and user experience of a website. In the video, the speaker explains how client-side JavaScript-heavy solutions can negatively affect Web Vitals by causing issues like layout shifts and long loading times, which ultimately hurt the site's SEO and user satisfaction.

Highlights

CDNs struggle with dynamic sites, as they rely on static content caching, making it difficult to ensure data consistency when the site's data changes frequently.

Developers often add a CDN to improve global scaling and speed, but cache control becomes a challenge when data frequently changes.

Cleaning the cache is a slow and unreliable process, leading to inconsistent data when users interact with outdated content.

When developers shift dynamic behavior to the client-side using JavaScript, it can lead to performance issues like layout shifts, slower page loads, and a poor user experience.

Cache control can result in losing the ability to reason about data consistency, causing a shift of dynamic processing to the client, which can hurt performance and SEO.

Streaming and granular caching are proposed as solutions to balance dynamic content needs and performance, but they require careful implementation.

While CDNs work well for static sites or content, they struggle with dynamic content like user-specific data, which needs real-time updates and cannot be effectively cached.

For dynamic websites like e-commerce platforms or news sites, a pure CDN approach isn't feasible due to the frequent changes in data like product availability or news updates.

Hybrid models like partial prerendering or server islands offer a middle ground where parts of a site can be static, while dynamic content is rendered on the server.

In modern web development, it's increasingly common to mix static and dynamic content to optimize performance while ensuring real-time updates where necessary.

Astro’s server islands and Next.js’s partial prerendering are highlighted as emerging solutions that effectively blend static and dynamic rendering for modern web applications.

Developers need to balance static and dynamic content to achieve optimal site performance, ensuring that only the components that need to be dynamic are updated in real-time.

Many current frameworks are moving towards hybrid models that allow developers to define which parts of the page should be static and which should be dynamic, improving flexibility.

Dynamic features like personalized content or shopping carts must be handled differently, often requiring real-time server rendering to avoid user experience issues.

While CDNs are effective for static content, they are insufficient for highly dynamic sites where data consistency and real-time updates are critical.

The discussion highlights that the future of web development lies in hybrid solutions, combining the efficiency of CDNs with dynamic server-rendered content for optimal performance.

Transcripts

play00:00

Por qué los cdns realmente no funcionan

play00:02

el sitio es Dinámico el sitio utiliza

play00:04

servers al rendering y una base de datos

play00:07

el sitio necesito necesita escala global

play00:09

y velocidad el desarrollador añade cdn

play00:12

en el frontal desarrollador pone cach

play00:15

control ahora el sitio es estático sí e

play00:18

los datos cambian normalmente el

play00:20

desarrollador empieza a limpiar la cache

play00:23

de cdn limpiar la cach es lento y no es

play00:26

fiable el usuario se pone a viajar en el

play00:29

tiempo y la Data es inconsistente el

play00:32

usuario no puede leer sus propias

play00:34

escrituras el desarrollador no puede

play00:36

observar o debugar la cach el

play00:38

desarrollador entonces paga por un cdn

play00:40

Enterprise el desarrollador empieza a

play00:42

utilizar el header de vari que es el

play00:44

como que el varía para saber cuándo

play00:47

tiene que que cambiar el contenido Vale

play00:50

cuando dices vale pues ha variado el

play00:52

contenido Pues ahora tienes que servir

play00:53

un contenido diferente sigue siendo

play00:55

demasiado estático muy grande la

play00:57

cardinalidad en el cach Y entonces

play00:59

empieza a ver un un montón de Miss y ya

play01:00

no estás utilizando bien la cach no

play01:02

puedes personalizar o experimentar

play01:05

necesita el sitio más dinamismo el

play01:07

desarrollador empieza a enviar

play01:09

javascript al cliente para arreglarlo

play01:11

entonces llega a ver todo en el cliente

play01:13

empieza a renderizar ahí el sitio se

play01:15

convierte en lento y tiene un montón de

play01:17

layout shift un montón de spinners

play01:19

páginas estáticas páginas más lentas y

play01:22

empieza a fallar todo lo que es el

play01:23

rendimiento con los web vitals y el seo

play01:26

se va a la basura en resumen cche

play01:28

control te hace perder la habilidad de

play01:30

razonar sobre la consistencia de tus

play01:32

datos y empieza a cambiar y a mover toda

play01:36

la carga del dinamismo al cliente hacer

play01:39

streaming y el cacheo granular en lugar

play01:42

de toda la página arregla esto y madre

play01:45

mía la que se ha liado la que se ha

play01:48

liado con esto bueno tiene aquí 1000

play01:49

likes pero tiene tiene muchos likes pero

play01:52

más gente que le ha contestado ya os

play01:54

digo yo que hay más gente que le ha

play01:55

contestado que otra cosa En definitiva

play01:57

que compre mi producto y él dice no solo

play01:59

quiero que las cosas funcionen mucho

play02:01

mejor una persona local descubre la

play02:03

coherencia caché requiere mucho trabajo

play02:05

duro y se crea ahí sobre el producto no

play02:08

hay un camino para lograr coherencia en

play02:10

la caché con caché control aquí lo he

play02:12

arreglado Por qué los cdns no funcionan

play02:15

realmente para mí hay mucha gente en las

play02:18

réplicas dice que señalan que en

play02:21

realidad el contenido Dinámico no es

play02:22

para los que sirven la cdn esto tiene

play02:23

algunos problemas que esto es lo que

play02:25

está sucediendo en el mundo real en la

play02:27

práctica las noticias el comercio

play02:28

electrónico los blogs y los sitios de

play02:30

marketing están haciendo control de

play02:32

caché y emparejamiento con javascript

play02:34

del dado de cliente qué sitio a web hoy

play02:37

en día no es Dinámico en el momento en

play02:39

el que agregas un estado de inicio de

play02:40

sesión o un experimento marca eres

play02:42

Dinámico y luego dice es que no sé qué

play02:45

será es no ha funcionado Qué es es H

play02:47

site includes H site includes vale vale

play02:50

Ya sé lo que es Eh no ha funcionado en

play02:51

la práctica debido a que la cdn está

play02:53

desvinculada del Código de la aplicación

play02:55

ese No ayudaa ahora os digo lo que es no

play02:56

hay experiencia de desarrollo local

play02:58

implementación de vista previa soporte

play02:59

documentación ejemplos soporte de macros

play03:01

y tal vale es básicamente es como la

play03:05

posibilidad de hacer partes de tu página

play03:09

inyectando contenido Dinámico que está

play03:11

bastante interesante porque así lo que

play03:13

puedes hacer ves esto sera el s eh Tú

play03:15

puedes hacer que todo sea Dinámico Pero

play03:17

puedes incrustar otra parte que sería

play03:20

totalmente separada que pueda tener otro

play03:22

tipo de de Cat control o lo que sea no

play03:24

así que bueno sería como incrustar que

play03:26

al final Pues sería algo parecido que es

play03:29

verdad que el esi puede tener como una

play03:31

parte de tu web puede tener un cach

play03:33

control diferente Pero bueno al final

play03:35

Mira Daniel esto tiene que ser bite la

play03:38

verdad es que es bastante bastante

play03:40

bastante polémico lo que ha dicho yo

play03:43

creo que muchas veces el problema que

play03:45

hay por aquí el problema que hay de todo

play03:47

esto es como fijaos que empiezas aquí a

play03:49

hablar a hablar y mucha gente lo estaba

play03:51

comentando yo creo que lo que está

play03:53

hablando Guillermo puede ser que tenga

play03:56

sentido o sea pero es verdad que está

play03:58

hablando de un punto muy concreto y muy

play04:00

pensando quizás en su producto que es

play04:02

verdad que es el de vercell y en su

play04:04

producto tiene sentido Pero a ver un cdn

play04:06

cuando estamos hablando de sitios

play04:08

estáticos o cuando nosotros nos viene a

play04:10

la cabeza nuestras páginas web Claro en

play04:12

nuestras páginas web en nuestros blogs

play04:15

en nuestras cosas que son muy concretas

play04:18

seguramente Pues un cdn puede tener todo

play04:21

el sentido del mundo es es contenido que

play04:24

no cambia mucho que es bastante estático

play04:27

que lo único que necesitamos es que se

play04:29

distribuya y que sea barato y ya está no

play04:31

pero por ejemplo la web de la velada

play04:33

Pues en muchos casos puede tener sentido

play04:35

que sea totalmente estática no es un

play04:37

contenido que cambia pues esto puede ser

play04:39

un cdn se puede cachear Hala Ya está no

play04:42

y luego las páginas que tienen algo

play04:44

Dinámico Como por ejemplo yo que sé pues

play04:46

la la del combate Qué tiene de Dinámico

play04:48

aquí el pronóstico toda la página puede

play04:50

ser estática pero el pronóstico pues no

play04:52

pasa nada lo puedes lo puedes cargar en

play04:55

el cliente no va a dar un salto encima

play04:58

está debajo del viewport no lo ves No

play05:00

pasa nada son páginas que tienen todo el

play05:02

sentido del mundo que sean estáticas

play05:04

Claro si entramos en el mundo ya más

play05:06

empresarial por ejemplo un e-commerce

play05:09

Por ejemplo yo que sé airbnb Claro

play05:11

airbnb cómo la vas a hacer estática no

play05:13

tiene sentido no no puedes intentar

play05:15

hacer en un cdn tener esto porque al

play05:18

final todos estos resultados de búsqueda

play05:20

tienen que ir cambiando se tienen que ir

play05:22

repri zar cuando van cambiando todos los

play05:25

filtros además no lo puedes cachear

play05:26

todos no lo puedes generar todo De

play05:28

antemano sería como demasiado difícil

play05:31

quizás puedes intentar cachear alguna

play05:33

cosa Como por ejemplo esta página Pero

play05:35

qué ocurre cuando esta página la usuaria

play05:38

chenai no Jan kapur dice ostras voy a

play05:42

cambiar la descripción Claro si cambia

play05:44

la descripción si cambias Las

play05:46

evaluaciones cada cuá tienes que cambiar

play05:47

o recuperar Las evaluaciones y generar

play05:49

el cdn al final llega un momento que

play05:51

estás regenerando Tanto el cdn que es

play05:55

muy difícil porque quieres que sea

play05:57

estático pero también te gustaría que de

play05:59

vez en cuando Las evaluaciones la

play06:01

valoración todo esto sea Dinámico Cuando

play06:03

alguien añade una evaluación te gustaría

play06:05

que apareciese no Entonces quieres

play06:07

partes dinámicas pero partes estáticas

play06:10

también y ahí es donde está lo

play06:11

complicado en este tipo de de páginas

play06:14

donde hay cosas estáticas pero dinámicas

play06:16

y tal Ahí es donde yo creo que es donde

play06:18

está hablando aquí Guillermo Entonces yo

play06:20

creo que es polémico porque creo que

play06:23

esto no es verdad o sea creo que los

play06:25

cdns sí que funcionan creo que sí que

play06:27

funcionan y funcionan para casos de uso

play06:29

donde tiene sentido la cdns no pero

play06:32

entiendo Cuando claro cuando ya el

play06:34

primer punto es el sitio es Dinámico el

play06:36

primer punto es el sitio es Dinámico

play06:39

obviamente no ya es obvio que no te va a

play06:44

funcionar todo lo de abajo todo lo de

play06:46

abajo ya no va a funcionar yo creo que

play06:48

aquí el tema es si la estrategia de

play06:53

vercel con nexts es la más idónea que yo

play06:56

creo que puede tener bastante sentido

play06:57

con el partial prerendering que es estas

play07:00

cosas que que está haciendo nexs que

play07:02

tiene bastante buena pinta donde puedes

play07:04

mezclar por un lado eh partes estáticas

play07:07

dinámicas a streamear la los datos claro

play07:11

aquí veis tendríamos parte de que tienes

play07:14

esta página lo Lila sería estático y lo

play07:16

que es azul sería Dinámico Y aquí tiene

play07:19

bastante sentido donde tienes una parte

play07:20

que es dinámica que se renderiza todavía

play07:23

en el servidor pero lo que es estático

play07:26

porque Bueno lo quieres cambiar cada muy

play07:28

poco tiempo Pues bueno lo puedes hacer

play07:30

por ejemplo el product information es

play07:32

muy fácil que cada vez que se hace un

play07:34

cambio lo pueda regenerar Bueno pues eso

play07:37

no se va a regenerar no va a estar

play07:38

cambiando el usuario la información del

play07:41

producto cada dos por tres puedes hacer

play07:43

que cada vez que se guarde en base de

play07:44

datos se regenere la parte estática se

play07:47

revalide y ya está eso es fácil pero por

play07:49

ejemplo los productos recomendados que

play07:51

van a cambiar constantemente y que tiene

play07:53

que ver con el el comportamiento del

play07:55

usuario esto no lo puede revalidar No es

play07:58

tan fácil No pues esto lo pues hacer

play07:59

Dinámico el carrito también lo quieres

play08:02

hacer Dinámico Y en lugar de hacerlo en

play08:03

el cliente que puede ser problemático

play08:05

porque daría saltos la ui lo podrías

play08:07

hacer en servidor con este tipo de de

play08:10

experimento esto cada vez más es una

play08:12

cosa que se está poniendo muy de moda

play08:14

porque está demostrad dissimo Yo creo

play08:16

que es la forma correcta de trabajar con

play08:19

las webs en pleno 2024 Como por ejemplo

play08:23

no solo xgs sino que también Astro lo

play08:26

está haciendo Astro con los server

play08:28

icelands que es lo que ha ad hace poco

play08:30

que lo estuvimos comentando en el en el

play08:32

proyecto que hicimos en el curso de

play08:34

Astro 5 mid Life en este cursito que

play08:38

hicimos los server icelands pues lo lo

play08:40

vimos no el hecho de que toda la página

play08:43

toda la página es estática

play08:46

excepto lo que nosotros hacemos y

play08:48

decimos que sea Dinámico entonces toda

play08:50

la página es estática excepto la

play08:52

puntuación porque la puntuación puede

play08:54

cambiar muy constantemente no tiene

play08:57

sentido que estemos constantemente

play08:59

revalidando el cdn o la parte estática y

play09:03

decimos Oye toda la página es estática

play09:04

excepto la puntuación que quiero que lo

play09:07

hagas en el servidor porque el servidor

play09:09

siempre va a ser mucho más rápido No

play09:10

quiero que lo parches en el cliente y

play09:12

teniendo que cargar el el javascript en

play09:15

el cliente lo haces en el servidor y

play09:17

simplemente todo lo demás me lo haces

play09:19

estático y ya está y yo creo que esto es

play09:22

una cosa que ahí en ese punto sí que

play09:23

tiene razón pero claro Así dicho en

play09:26

general me parece como bastante polémico

play09:28

Porque si Así que creo que en muchos

play09:30

casos un cdn es suficiente y páginas que

play09:33

puedan ser totalmente estáticas también

play09:35

podrían tener todo el sentido del mundo

play09:37

no O sea creo que hay alguna ves dice un

play09:40

cdn puedes ser útiles para páginas que

play09:44

son de server rendering esto lo que dice

play09:46

medit puede tener sentido Pero imaginaos

play09:48

una página yo que sé fotocasa que donde

play09:50

estuve trabajando No en fotocasa al

play09:52

final si tú estás buscando un piso en

play09:54

Barcelona capital Cómo vas a cachear los

play09:57

resultados de búsqueda no tienes sentido

play09:59

y si se vende este piso y si modifican

play10:01

el precio de este piso y si este piso lo

play10:04

retiran porque ya no lo venden Y o sea

play10:07

es que Hay demasiadas cosas que tú te

play10:09

pones a cachear y no tendría sentido no

play10:11

tiene sentido Por más que sea serves a

play10:14

rendering y que quieres que lo tenga un

play10:16

buscador al final le podrías estar

play10:18

enviando información que ya es vieja o

play10:21

que no quieres que se muestre o tal no O

play10:24

sea que sí que es verdad que creo que es

play10:25

complicado el hecho de que si el sitio

play10:27

es Dinámico utilizas un cdn delante y ya

play10:30

está Y eso se te soluciona y punto si el

play10:33

sitio es Dinámico vas a tener que hacer

play10:34

cosas bastante más complejas que no

play10:36

decir voy a Pon un cdnn delante y y ya

play10:38

está para nosotros mortales sí que puede

play10:40

ser que funcione pero muchas veces para

play10:43

cosas más complicadas en el mundo real

play10:46

no va a ser tan fácil periódicos eh

play10:48

tiendas online no en una tienda online

play10:50

no puedes poner un cdn y ya está porque

play10:52

al final El problema es que si el

play10:54

usuario tiene carrito y tal claro es lo

play10:56

que dice entonces empiezas a hacerlo en

play10:58

el

play10:59

y el problema que te encuentras ahí al

play11:01

hacerlo todo en el cliente es que

play11:03

empiezas a parchear un montón de cosas

play11:05

en el cliente y eso lo ve el usuario y

play11:07

le afecta la experiencia de usuario no

play11:09

revalidate on demand es que eso no no es

play11:12

vedas es el revalidate on demand puede

play11:15

funcionar para cosas que cambian muy

play11:17

poco porque para cosas que cambian cada

play11:20

mucho el revalid deon deman al final

play11:22

cada dos por TR tienes que revalidar Y

play11:24

entonces estás haciendo el mismo trabajo

play11:26

solo que la primera vez a lo mejor no lo

play11:27

haces pero no paras de revalidar lo y

play11:30

tal Y aunque Cómo sabes cuando la

play11:33

información que está mostrando es la

play11:35

correcta sabes es complicado pero sí es

play11:37

lo que dice js lacro parecido al

play11:39

monolito no se puede demonizar todo yo

play11:41

creo que el mensaje así ha sido polémico

play11:43

ya lo ha hecho aposta Por qué los cdns

play11:46

no funcionan a ver los cdn sí que

play11:48

funcionan totalmente pero funcionan para

play11:51

páginas que son bastante estáticas si el

play11:53

sitio es Dinámico pues hombre ahí ya

play11:56

empiezas a tener un problema y tienes

play11:58

que buscar otras soluciones qué

play12:00

soluciones yo creo que partial

play12:02

prerendering de nexts los server

play12:04

icelands de Astro son soluciones que te

play12:06

pueden simplificar mucho la vida y que

play12:08

te van a ayudar y que ahí es donde yo

play12:10

creo que está está la idea no eh lo

play12:13

ideal es dividir la información y

play12:14

dependiendo de cómo vaya a ser usar ssr

play12:16

estático cliente Claro pero ese es el

play12:18

problema que lo quieres todo No quieres

play12:21

separar la página a que sea server site

play12:24

o static lo que te gustaría es que en

play12:27

una misma página tener partes que sean

play12:29

estáticas y otras que sean server site

play12:32

Esa es la clave Y eso es lo complicado

play12:34

el hecho de decidir que la página entera

play12:36

sea server site eso muy fácil pero el

play12:38

problema es que no quieres tener eso lo

play12:40

que quieres es pues como lo de los

play12:43

server islands lo que quieres es decir

play12:45

No quiero que este componente y solo

play12:47

este componente sabes Solo este

play12:49

componente sea una isla del servidor y

play12:53

todo lo demás que sea estático lo que

play12:55

quieres es mezclarlos porque a nivel de

play12:57

página es lo que dices es muy sencillo

play12:59

Pero entonces estás perdiendo las

play13:01

ventajas que te ofrece cada uno sería un

play13:03

rollazo no así que yo creo que es verdad

play13:05

que van por ahí los tiros de que cada

play13:07

vez vamos a estar viendo más y más el

play13:09

híbrido este de ir mezclando todos los

play13:11

frameworks lo van a tener de una forma u

play13:13

otra eh Astro con sus Islas next es con

play13:16

el partial prerendering y todos van a

play13:18

estar haciendo cosas así pero creo que

play13:20

me parece que tu discusión con Guillermo

play13:22

sería que proporción internet es

play13:23

Dinámico Sí o sea yo no digo que no esté

play13:25

de acuerdo lo que me refiero es que

play13:28

decir esta frase Por qué los cdn

play13:30

realmente no funcionan es polémica pero

play13:33

que puedo entender que se dice que el

play13:34

sitio es Dinámico Bueno pues por ahí

play13:36

pueden ir los tiros y tal

Rate This

5.0 / 5 (0 votes)

Related Tags
CDN ChallengesDynamic SitesCaching IssuesSEO PerformanceWeb DevelopmentFrontend OptimizationUser ExperienceServer-side RenderingWeb VitalsNext.js Solutions