前端缓存别混用:HTTP 缓存、CDN、Service Worker 各管一段
【摘要】 很多线上事故来自职责混用。比如把用户订单列表缓存在 CDN,或者 Service Worker 缓存了带权限的 API 响应,用户切换账号后看到别人的数据。缓存 key 必须包含所有影响响应的维度:URL、查询参数、租户、用户角色、语言、版本。一个实用原则:静态资源长缓存加内容哈希;公共可共享数据用 CDN 短缓存加 stale-while-revalidate;用户私有数据 private...
很多线上事故来自职责混用。比如把用户订单列表缓存在 CDN,或者 Service Worker 缓存了带权限的 API 响应,用户切换账号后看到别人的数据。缓存 key 必须包含所有影响响应的维度:URL、查询参数、租户、用户角色、语言、版本。
一个实用原则:静态资源长缓存加内容哈希;公共可共享数据用 CDN 短缓存加 stale-while-revalidate;用户私有数据 private, no-store 或短时内存缓存;离线场景用 Service Worker,但只缓存明确安全的资源。
缓存不是“加一层更快”,是“加一层要正确”。先画清楚每一层管什么,再谈命中率。
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)