概述合理的浏览器与边缘缓存可显著降低回源压力与延迟。本文以 HTTP 头与 CDN 策略为核心,给出实践清单与验证方法。HTTP 缓存(已验证)强缓存:`Cache-Control: max-age=31536000, immutable` 适用于版本化静态资源。协商缓存:`ETag` 或 `Last-Modified`;非版本化资源与动态页面使用。公私缓存:使用 `s-maxage` 控制 CDN;`private` 控制浏览器端缓存。增强:`stale-while-revalidate` 与 `stale-if-error` 提升可用性。CDN 边缘策略按路径分组缓存策略:静态资源长缓存、接口短缓存或不缓存。变体与 Vary:基于 `Accept-Encoding`/`User-Agent` 等维度区分缓存条目。压缩:优先 Brotli(`br`)与 HTTP/2/3;小资源也压缩文本类型。预连接:`preconnect`/`dns-prefetch` 加速首包。示例Cache-Control: public, max-age=31536000, immutable Cache-Control: public, s-maxage=600, stale-while-revalidate=120 ETag: "v1.2.3" Vary: Accept-Encoding <link rel="preconnect" href="https://cdn.example.com"> <link rel="dns-prefetch" href="//cdn.example.com"> 验证与监控命中率与回源量:按资源类型与路径统计;首包与 TTFB:边缘与源站对比;错误与降级:观察 `stale-if-error` 命中与用户体验变化。常见误区未版本化却长缓存,导致更新不可见;忽略 `Vary` 导致缓存污染;所有接口统一缓存策略,未区分安全性与时效性。结语以版本化与协商缓存为基础、s-maxage 与陈旧容忍增强可用性,配合压缩与预连接,形成高命中且可控的边缘缓存体系。

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部
1.821330s