El almacenamiento en caché cambia las reglas del juego para mejorar la velocidad y la capacidad de respuesta de las aplicaciones web y móviles. En este blog, exploraremos estrategias de almacenamiento en caché esenciales para aplicaciones frontend, abordaremos el manejo de grandes cantidades de datos y profundizaremos en las complejidades del almacenamiento en caché hacia atrás/adelante (B/F).
El almacenamiento en caché del navegador aprovecha la capacidad del navegador para almacenar copias de recursos web localmente, lo que reduce los tiempos de carga y las solicitudes del servidor. Aquí hay algunos aspectos cruciales:
Control de caché: este encabezado HTTP dicta las políticas de almacenamiento en caché. Por ejemplo, Cache-Control: max-age=3600 le dice al navegador que almacene en caché el recurso durante 3600 segundos.
Expira: este encabezado especifica una fecha/hora de vencimiento exacta para el recurso almacenado en caché. A menudo se usa junto con Cache-Control.
ETag: el encabezado ETag proporciona un identificador único para las versiones de recursos. Cuando un recurso cambia, su ETag cambia, lo que permite una validación de caché eficiente.
Cache-Control: public, max-age=86400 Expires: Wed, 21 Oct 2024 07:28:00 GMT ETag: "33a64df5"
Service Workers son scripts que se ejecutan en segundo plano y brindan capacidades avanzadas de almacenamiento en caché. Pueden interceptar solicitudes de red y ofrecer respuestas almacenadas en caché, incluso permitiendo el acceso sin conexión.
Caché primero: servir desde el caché si está disponible; si no, búscalo desde la red.
Red primero: buscar primero en la red; si la red no está disponible, publique desde la memoria caché.
Obsoleto mientras se revalida: sirve desde la memoria caché y simultáneamente recupera y actualiza la memoria caché en segundo plano.
self.addEventListener('fetch', event => { event.respondWith( caches.match(event.request).then(response => { return response || fetch(event.request); }) ); });
El almacenamiento local y IndexedDB son soluciones de almacenamiento basadas en navegador para conservar datos en el lado del cliente.
Almacenamiento local: ideal para almacenar pequeñas cantidades de datos como pares clave-valor. Es sincrónico y tiene un límite de almacenamiento de aproximadamente 5 MB.
IndexedDB: Adecuado para almacenar grandes cantidades de datos estructurados. Admite transacciones y consultas complejas, lo que lo hace ideal para datos más sustanciales y complejos.
localStorage.setItem('key', 'value'); let value = localStorage.getItem('key');
let request = indexedDB.open('database', 1); request.onupgradeneeded = event => { let db = event.target.result; db.createObjectStore('store', { keyPath: 'id' }); };
El navegador tiene algunas técnicas de almacenamiento en caché, aquí se muestra una de ellas.
El almacenamiento en caché B/F se refiere al mecanismo mediante el cual los navegadores almacenan el estado de una página web en el historial del navegador, lo que permite a los usuarios navegar hacia adelante y hacia atrás sin recargar toda la página.
La mayoría de los navegadores los tienen, puedes explorarlos desde la pestaña de inspección
Caché de página: el navegador almacena el estado completo de la página, incluido el DOM, el contexto de JavaScript y los datos en memoria.
BFCache: Los navegadores modernos (como Chrome y Firefox) usan BFCache para preservar el estado de la página en la memoria, lo que permite la navegación instantánea.
Navegación más rápida: la página se carga instantáneamente cuando se usan los botones de avance y retroceso del navegador.
Experiencia de usuario mejorada: las transiciones fluidas mejoran la experiencia general del usuario.
Carga del servidor reducida: menos solicitudes al servidor a medida que el estado de la página se almacena y se reutiliza.
La implementación de estrategias de almacenamiento en caché eficientes puede mejorar drásticamente el rendimiento de las aplicaciones web y móviles. Desde el almacenamiento en caché del navegador y los trabajadores de servicios hasta la gestión de grandes cantidades de datos y el uso del almacenamiento en caché B/F, estas técnicas garantizan que sus aplicaciones sean rápidas, receptivas y fáciles de usar. ¡Empiece a aprovechar estas estrategias hoy para revolucionar el rendimiento de su aplicación!
Espero que hayas aprendido algo nuevo de este blog. Sígueme para blogs de tecnología breves, nítidos, profundos y únicos. ¡Gracias!
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3