Co service worker naprawdę robi
Gdy strona rejestruje service worker, przeglądarka uruchamia jego skrypt w tle, osobno od każdej karty. Worker przechwytuje żądania sieciowe strony, serwuje pliki z lokalnego cache, odnawia się z sieci i dalej nasłuchuje powiadomień push, nawet gdy zamkniesz wszystkie okna. To mechanika stojąca za instalowalnymi aplikacjami webowymi, webową pocztą offline i komunikatorami działającymi bez aplikacji ze sklepu.
To autentycznie dobry projekt — i projekt magazynowy zupełnie bez wstydu. Przeglądarka pozwala originowi trzymać gigabajty w CacheStorage, jeśli dysk ma zapas, więc webowy player albo edytor dokumentów otwarty raz może trzymać setki megabajtów latami. Worker i jego cache siedzą w profilu przeglądarki i nic ich nie eksmituje, dopóki presja na pamięć nie zmusi przeglądarki do ruchu.
Gdzie mieszkają resztki
W Chrome i innych przeglądarkach opartych na Chromium te dane siedzą wewnątrz folderu każdego profilu, pod Service Worker\CacheStorage i Service Worker\ScriptCache. Zwykli podejrzani są przewidywalni: webowa poczta, webowe playery każdej usługi streamingowej, komunikatory w przeglądarce i pakiety biurowe, które cache'ują cały interfejs do pracy offline. Firefox trzyma ten sam pomysł we własnych katalogach przechowywania, kluczowanych per origin, więc resztki to nie nawyk wyłącznie świata Chromium.
- Chrome/Edge: %LOCALAPPDATA%\<browser>\User Data\<profile>\Service Worker\CacheStorage — gigabajty to tu norma
- Najcięższe originy: webowa poczta, streamingowe playery webowe, komunikatory w przeglądarce, biurowe pakiety online
- Te dane z założenia przeżywają restarty przeglądarki, aktualizacje i ponowne uruchomienia komputera
- Rozmiar per strona widać w DevTools → Application → Storage albo w chrome://settings/content/all
- Strona odwiedzona raz trzyma swój cache, dopóki sam go nie wyczyścisz — automatycznego wygasania nie ma
Bezpieczne sprzątanie resztek
Dla pojedynczej strony DevTools → Application → Service Workers ma przycisk Unregister, a chrome://serviceworker-internals wypisuje każdego zarejestrowanego workera w profilu z tą samą opcją. Czyszczenie danych strony z chrome://settings/content/all usuwa workera, jego cache i jego pliki cookie za jednym zamachem — zostaniesz wylogowany, a strona i tak zarejestruje go ponownie przy następnej wizycie. Żadna z tych operacji nie jest niebezpieczna: w najgorszym wypadku aplikacja webowa pobierze swoje pliki następnym razem od nowa.
Przy sprzątaniu całego profilu ręczne polowanie na foldery szybko się nudzi — i dokładnie do tego służy głębokie czyszczenie w Kleaner PRO: wymiata cache przeglądarek we wszystkich profilach za jednym przejściem, łącznie z takimi resztkami. Jeśli wolisz zostać przy ręcznym, posortuj folder Service Worker według rozmiaru, usuń najcięższe originy i zamykaj temat. Tak czy siak miejsce wraca natychmiast, a strony odbudują to, czego potrzebują, przy następnym wejściu.
Pytania i odpowiedzi
Co się stanie, jeśli usunę service workery?
Strona po prostu zarejestruje świeżego workera przy następnym wejściu. Do tego czasu tracisz dostęp offline i powiadomienia push z tej strony; wylogowanie nastąpi dopiero, jeśli skasujesz także pliki cookie.
Dlaczego strony internetowe trzymają dane na moim komputerze?
Po to, żeby aplikacja webowa otwierała się natychmiast, działała offline i mogła odbierać powiadomienia bez otwartej karty. To ten sam pomysł co lokalny cache aplikacji ze sklepu, tylko dostarczony przez przeglądarkę.
Sprawdź warunki przed zakupem
Porównaj czas licencji i liczbę urządzeń. Każdy płatny plan odblokowuje ten sam zestaw narzędzi PRO.
Przeczytaj także
Napisz do nas: [email protected]