前端发布、缓存与回滚

静态资源缓存

HTML 通常短缓存或不缓存,JS/CSS/图片使用内容 hash 文件名后可长期缓存。发布时先上传新资源,再切换 HTML;否则旧 HTML 引用的新文件可能尚未存在,造成白屏。

发布策略

  • 预览环境验证 PR 产物。
  • 灰度/金丝雀只向部分用户放量,并观察错误率和核心性能。
  • 使用不可变构建产物和版本号,回滚时切换到上一份完整产物,而不是现场重新构建。
  • CDN 刷新应尽量只刷新入口 HTML;带 hash 的静态资源不需要频繁 purge。

常见追问

Service Worker 可能缓存旧版本并拦截请求,必须设计版本更新、激活和回滚策略;发布系统还应记录 commit、构建环境、依赖锁文件和产物校验值。