웹 워커는 계산, 서비스 워커는 네트워크를 분리한다
둘 다 메인 스레드 밖에서 실행되지만 목적이 다르다. UI 멈춤을 줄일지, fetch/cache 경로를 제어할지부터 나눈다.
| 선택 | 쓸 때 | 통신 방식 | 주의점 |
|---|---|---|---|
| Dedicated Worker | 큰 계산·파싱·압축 분리 | postMessage | DOM 직접 접근 불가 |
| Transferable | 큰 ArrayBuffer 전달 | 소유권 이동 | 원본 buffer 사용 불가 |
| Service Worker | 캐시·오프라인·요청 제어 | fetch event, Cache API | HTTPS와 scope 필요 |
| Lifecycle | 설치·활성화·업데이트 관리 | install/activate | 새 버전 적용 지연 |
워커를 쓰는 이유가 계산 분리인지 네트워크 프록시인지 정하면 API와 제약이 자연스럽게 갈린다.