2016-12-06 18 views
1

Wie lange dauert es nach der Installation des Service Worker für den Chrome-Browser, nach einer neueren Version zu suchen? Wann läuft der aktuelle clientseitige Service-Mitarbeiter normalerweise ab?Service Worker Ablauf

Ich versuche herauszufinden, Best Practice für die Entwicklung mit Service Workers und drängen Änderungen zu prod. Sobald eine Änderung an der Funktionsweise von Service Worker vorgenommen wurde, wird diese nicht immer von Clients aufgehoben, wenn bereits ein früherer Service Worker installiert wurde.

Diese Frage ist auch etwas relevant: Programmatically update service worker - idealerweise sobald eine Änderung in der SW implementiert ist, sollten Sie die Aktualisierung auf allen Clients erzwingen, die möglicherweise bereits eine frühere Version haben.

Antwort

4

sorgfältige Lektüre des MDN Dokuments eine Antwort:

https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API/Using_Service_Workers#Updating_your_service_worker

Wenn Ihr Servicemitarbeiter vorher installiert wurde, aber dann eine neue Version des Arbeitnehmers auf Refresh oder Laden der Seite verfügbar ist, Die neue Version wird im Hintergrund installiert, aber noch nicht aktiviert. Es wird nur aktiviert, wenn keine Seiten mehr geladen sind, die noch den alten Service-Mitarbeiter verwenden. Sobald keine weiteren Seiten mehr geladen sind, wird der neue Service-Mitarbeiter aktiviert.

2

Standardmäßig läuft Service Worker nach 24 Stunden ab. Aber der beste Ansatz ist, max-age = 0 Header zu verwenden. Weil wir möchten, dass sich unsere Änderungen so schnell wie möglich widerspiegeln. Ich weiß nicht, ob Force Update durchgeführt wird, aber wenn keine Service-Worker-Datei zwischengespeichert wird und keine Registerkarte für vorherige Service-Mitarbeiter geöffnet ist, wird der neue Service-Mitarbeiter automatisch installiert.

auf diesen Link verweisen für weitere Informationen https://jakearchibald.com/2016/caching-best-practices/

+0

auch sehen http://stackoverflow.com/questions/38843970/service-worker-javascript-update-frequency-every-24-hours/38854905#38854905 – sideshowbarker