转转转后端
文章发布时间:
最后更新时间:
最后更新时间:
转转转后端!
强制缓存和协商缓存
https://xiaolincoding.com/network/2_http/http_interview.html#%E4%BB%80%E4%B9%88%E6%98%AF%E5%BC%BA%E5%88%B6%E7%BC%93%E5%AD%98
强制缓存由浏览器主导,在一定时间内(Cache-Control)不找后端
协商缓存用 Last-Modified/If-Modified-Since, ETag/If-None-Match 来(后端)判断是否修改过,如果没修改过返回304
Go 静态服务 http.FileServer 使用 Last-Modified(文件系统元数据),hash运算开销太大
手写 ETag,把要发的data做md5 hash
1 | |
HTTPS (SSL/TLS)
登录&https 加密 在 TCP 和 HTTP 网络层之间加入了 SSL/TLS 安全协议,HTTPS 在 TCP 三次握手之后,还需 SSL/TLS 的握手 机密性:非对称加密获得会话密钥,对称加密传输数据
认证
确保公钥的身份
HTTP/2
- 头部压缩
- 二进制格式
- 并发传输:同一个tcp连接里的不同http请求可以并发,用 stream ID 识别

- 服务器主动推送资源 双方都可以建立 stream,客户端建立的 Stream 必须是奇数号,而服务器建立的 Stream 必须是偶数号。
HTTP/3 QUIC
QUIC 是一个在 UDP 之上的伪 TCP + TLS + HTTP/2 的多路复用的协议 - 无队头阻塞:实现每个stream相互独立的TCP的rdt,减少队头阻塞 - 更快的连接建立:把tcp连接和tls连接合在一起 - 连接迁移:不像 TCP的源ip+端口 & 目标ip+端口 来标识每一个tcp连接,而是让进程创建唯一标识,来防止ip改变而引起的