Service Worker 更新策略:避免缓存事故

SW 的核心难题是版本一致性,而不是注册。最危险的状态是 HTML 已更新,但 JS/CSS 仍命中旧缓存,导致逻辑错位。
建议缓存版本化命名、activate 阶段清理旧缓存,并给用户一个可控的刷新提示。入口 HTML 采用 network-first 更稳妥。
缓存策略要平衡“新鲜度”和“命中率”,目标是稳定可预期,而非单一指标最大化。

SW 的核心难题是版本一致性,而不是注册。最危险的状态是 HTML 已更新,但 JS/CSS 仍命中旧缓存,导致逻辑错位。
建议缓存版本化命名、activate 阶段清理旧缓存,并给用户一个可控的刷新提示。入口 HTML 采用 network-first 更稳妥。
缓存策略要平衡“新鲜度”和“命中率”,目标是稳定可预期,而非单一指标最大化。