Cómo Chrome Mejoró la Velocidad de las Interacciones Web

Publicado el

chrome

Todos queremos que nuestras aplicaciones y páginas web funcionen sin demoras. El equipo de Chrome ha estado trabajando arduamente para asegurarse de que el navegador no solo sea rápido en la mayoría de las ocasiones, sino que lo sea todo el tiempo. Hoy te contamos cómo lograron mejorar el rendimiento con una ingeniosa solución llamada Shared Memory Versioning.

El Desafío de las Cookies en Navegadores Multi-proceso

Las cookies han sido un pilar de la web desde sus inicios. Son esenciales para mantener sesiones de usuario y almacenar pequeñas piezas de información. Sin embargo, la evolución de los navegadores a arquitecturas multi-proceso complicó su manejo.

Cookies y Bloqueos en la Red

En navegadores antiguos, las cookies se almacenaban en memoria local. Pero con la arquitectura multi-proceso, la tarea de manejar las cookies recayó en un proceso dedicado. Esto significa que cada vez que JavaScript solicitaba una cookie, se realizaba una operación de bloqueo, ralentizando potencialmente la interacción si había muchas solicitudes simultáneas.

Descubrimientos en el Campo

El equipo de Chrome utilizó datos de campo, grabados de forma anónima con trazas de Perfetto en Chrome Canary, para identificar los cuellos de botella. Un hallazgo importante fue que muchas solicitudes de cookies eran redundantes. En promedio, el 87% de las veces, las solicitudes devolvían el mismo valor, generando un tráfico innecesario y ralentizando el navegador.

La Solución: Shared Memory Versioning

¿Cómo Funciona?

Para resolver este problema, se implementó Shared Memory Versioning. Este enfoque asocia cada valor de document.cookie con una versión que aumenta monotonamente. Así, cada proceso de renderizado puede saber si tiene la versión más reciente sin necesidad de enviar una consulta al servicio de red.

Resultados Tangibles

Con esta solución, los mensajes entre procesos relacionados con cookies se redujeron en un 80%, y el acceso a document.cookie se volvió un 60% más rápido. Este avance no solo mejoró la eficiencia del navegador, sino que también hizo que la experiencia del usuario sea mucho más fluida.

Validación y Pruebas

Pruebas A/B y Mejoras Reales

No basta con mejorar un algoritmo; es crucial verificar que las mejoras tengan un impacto real en la experiencia del usuario. Chrome utilizó su marco de pruebas A/B para estudiar el efecto de estas optimizaciones. Los resultados mostraron una mejora del 5% en las interacciones más lentas, lo que permitió a más sitios cumplir con los estándares de Core Web Vitals.

Implementación Gradual

La implementación de Shared Memory Versioning se realizó de forma gradual: comenzó con un 1% de usuarios en noviembre, aumentó al 50% en diciembre y se extendió a todos los usuarios en febrero. Esta estrategia garantizó una transición suave y permitió monitorear y ajustar el rendimiento en cada fase.

Un Futuro Más Rápido y Eficiente

Las mejoras introducidas por el equipo de Chrome son un paso significativo hacia una web más rápida y eficiente. Al reducir los bloqueos innecesarios y optimizar el manejo de cookies, el navegador ahora ofrece una experiencia más fluida y rápida para millones de usuarios en todo el mundo.

Comparte en: