Files

872 B
Raw Permalink Blame History

Context

发版窗口中存在“服务器已切到新版本、npm CDN 还未完全可用”的短暂不一致窗口。此前的 CDN 绝对优先会触发 404 或错误页,改成源站优先后又牺牲了正常流量下的加载速度。

Goals

  • 对版本化静态资源尽可能优先使用 CDN
  • 对入口链路保持同源优先,避免版本错配
  • CDN 异常时快速熔断并回源,避免一个页面内重复踩坑
  • 允许 Service Worker 复用已校验过的 CDN 缓存响应

Decisions

  • 使用已有 cdn-config.js 的测速结果作为偏好输入,但真正的资源选择由 Service Worker 执行
  • 偏好数据持久化到独立 Cache Storage避免引入新的 IndexedDB 表
  • 静态缓存统一写入 x-sw-sourcex-sw-revisionx-sw-app-version
  • 非 HTML 的预缓存与运行时静态请求共享同一套智能加载路径