浏览器有一个缓存数据库。
浏览器的缓存策略: from memory from disk:实体文件,图片
no-cache表示不走强制缓存,但是可以走对比缓存
1、强制缓存: Cache-Control(10s之内不要再来烦我了)返回200 html没有缓存,它引用的文件都被缓存了 2、对比缓存:
- 2.1 对比缓存之Last-Modified:(对比Last-Modified if-modified-since,单位是秒)过了10s后,继续来烦我,先看一下是否被修改过,如果没有修改过返回304,客户端从缓存中获取结果。
- 2.2 对比缓存之Etag:最靠谱的方式,给文件内容生成一个md5的摘要,但是最耗性能。。。 把文件内容都读出来,然后加密,耗内存
// 强制缓存 Cache-Control Expires return 200
// 对比缓存1:Last-Modified if-modified-since return 304
// 对比缓存2:Etag if-none-match return 304
304 200
HTTP:
缓存: 代理: 正向代理:科学上网,是我们客户端配置的
反向代理 nginx 典型的反向代理 cdn(内容分发网络)的实现是基于反向代理:多服务器 反向代理:webpack proxyTable典型的反向代理
怎样实现一套反向代理?
虚拟主机1 www.zz1.cn localhost:3001 虚拟主机2 www.zz2.cn localhost:3002
静态资源CDN
静态资源(static resources) : js , css , img 等非服务器动态运行生成的文件
在一般的网站中,静态资源使用频率高,流量占用大。对于有追求(访问量稍大)的网站,都会把静态资源放置到CDN服务器,不占用业务服务器的网络带宽,从而达到更好的用户体验。那大公司的静态资源怎么发布呢? https://blog.csdn.net/m_review/article/details/76223832 https://blog.csdn.net/lunhui1994_/article/details/74177934