缓存设置得当不但可减少用户等待时间,提升体验,还节省服务器开销省流量带宽。
缓存的配置有两种策略:
- 稳定的内容 + 长期缓存
- 经常变动的内容 + 使用前询问
对于缓存时间小于 10 分钟的资源,浏览器不会重新请求而是直接使用缓存。
软件开发之二HTTP缓存相关
假设一个场景,页面 A 包含一个公共脚本 common.js 和页面 A 的业务脚本 a.js 。当页面 A 首页加载时,所有资源都正确缓存。
过了一段时间,切换到页面 B,页面 B 也包含公共脚本 common.js ,同时有自己的业务脚本 b.js 。
在请求页面 B 之前,因为已经缓存过 common.js ,所以会使用缓存,但这期间文件有可能已经更新。此时浏览器使用旧的 common.js 运行页面 B 势必会出问题。
所以,对于经常变动的内容设置 max-age 是不推荐的做法。
多数情况下针对上面的问题,一次强刷就解决了,这也是有 bug 时研发会给出的高频回复
|