PWA Lifecycle

Service Worker 수명 주기

PWA는 오프라인 체크리스트가 아니라 서비스 워커 수명 주기, 캐시 전략, 업데이트 알림, 네트워크 실패 UX가 맞물리는 브라우저 운영 모델입니다.

01

Register

페이지가 서비스 워커를 등록하고 scope 기준으로 제어할 URL 범위를 정합니다.

범위
02

Install

앱 shell, 핵심 CSS/JS, 오프라인 페이지처럼 필수 리소스를 미리 캐시합니다.

precache
03

Activate

이전 캐시를 정리하고 새 서비스 워커가 제어권을 갖는 시점을 관리합니다.

cleanup
04

Fetch

요청별로 cache-first, network-first, stale-while-revalidate 전략을 선택합니다.

runtime cache
05

Update UX

새 버전이 준비되면 사용자가 안전하게 새로고침하도록 알림과 적용 시점을 설계합니다.

refresh
Cache First
변하지 않는 정적 리소스 아이콘, 폰트, 해시 asset처럼 오래 캐시해도 안전한 자원에 적합합니다.
버전 관리 필수
Network First
최신성이 중요한 데이터 게시글 목록, 사용자 정보처럼 네트워크 우선 조회 후 실패 시 캐시를 fallback합니다.
timeout 설정
Stale While Revalidate
빠른 표시와 백그라운드 갱신 먼저 캐시를 보여주고 뒤에서 새 응답을 받아 다음 방문에 반영합니다.
오래된 표시 안내

PWA 검증 기준

오프라인 경로 네트워크가 끊겼을 때 주요 화면과 실패 안내가 의도대로 동작해야 합니다.
업데이트 충돌 새 JS와 오래된 HTML 또는 반대 조합이 흰 화면을 만들지 않게 합니다.
저장 공간 캐시가 무한히 쌓이지 않도록 버전과 만료 정책을 둡니다.