http1.1 和 http2 区别 缓存

http1.1是文本字符串传输,文本协议

http2

1、二进制协议(二进制传送的单位是帧和流),

2、多路复用(因为有流ID,所以通过同一个http请求实现多个http请求传输变成了可能,可以通过流ID来标示究竟是哪个流从而定位到是哪个http请求)

3、压缩了headers(因为headers在一系列请求中常常是相似的,其移除了重复和传输重复数据的成本。)

4、HTTP2支持在客户端未经请求许可的情况下,主动向客户端推送内容

 

强缓存:Cache-Control或Expires Cache-Control优先级更高,直接读取本地

Cahe-Control的属性:

max-age=number:是一个时间相对值,表示一个时间长度,通过和Last-Modified计算资源过期时间。
no-cache:不使用本地缓存。需要使用缓存协商,先与服务器确认返回的响应是否被更改,如果之前的响应中存在ETag,那么请求的时候会与服务端验证,如果资源未被更改,则可以避免重新下载。
no-store:直接禁止游览器缓存数据,每次用户请求该资源,都会向服务器发送一个请求,每次都会下载完整的资源。
public:可以被所有的用户缓存,包括终端用户和CDN等中间代理服务器。
private:只能被终端用户的浏览器缓存,不允许CDN等中继缓存服务器对其缓存。

弱缓存:Last-Modified/If-Modified-Since:/  Etag/If-None-Match

http1.1 和 http2 区别 缓存