PWA: Estrategias de cache en el Service Worker
Uso de cache en el service worker
El ciclo de vida del service worker hace que sea algo delicado el uso de caché, ya que hay posibilidades de que si se actualiza el service worker, se prefiera que no coja los ficheros de caché, si no que vuelva a cachearlos. Por ello hay varias estrategias a la hora de utilizar el caché en el service worker: network or cache, cache only, cache and update, cache update and refresh, embedded fallback, cache then network, etc…
Hay varias estrategias a plantear en lo que a caché se refiere, aquí las más comunes:
Network or cache
El service worker intenta recuperar el contenido más actualizado de la red, excepto si la red está tomando demasiado tiempo en responder, en cuyo caso el service worker servirá el contenido almacenado previamente en caché (si previamente se ha visitado el sitio, como es natural).
Cache only
En este caso, como bien dice el título, el service worker simplemente utiliza la caché, y ni siquiera conecta con la red.
Cache and update
Es un mix de las 2 anteriores, el service worker responde desde la memoria caché pero también actualiza la memoria caché desde la red.
Cache, update and refresh
Es un paso más al anterior: el service worker responde desde la memoria caché pero también actualiza la memoria caché desde la red. Cuando la respuesta de la red está lista, la interfaz de usuario se actualiza automáticamente.
Embedded fallback
El service worker sirve de respaldo si faltan recursos.