多层缓存并存时,如何避免旧资源、重复下载与容量失控?
简答题困难564 次浏览
参考答案与解析
# 核心结论
多层缓存并存时,应为每一层明确资源所有者、缓存键、版本策略、新鲜度要求、容量上限和淘汰责任。内容带指纹且不可变的脚本、样式和图片适合长期强缓存;入口文档和经常变化的数据应允许快速再验证;服务工作线程缓存只应用于离线、回退或自定义更新等浏览器 HTTP 缓存难以表达的需求。内存缓存、磁盘缓存、HTTP 缓存、Cache Storage 和业务数据库不是同一个缓存池,其命中路径与淘汰规则不同。只有统一设计地址、版本和容量,才能避免旧资源、重复下载与存储失控。
# 底层机制
浏览器根据 Cache-Control 等响应信息判断能否直接复用响应;资源过期后,可携带 ETag 或修改时间进行条件请
