跳至主要內容
HTTP发展史

省流总结

HTTP1.0和HTTP1.1

  1. HTTP1.0默认是短连接。每次与服务器交互,都需要新开一个TCP连接;
    HTTP1.1默认是长连接。只要客户端服务端没有断开TCP连接,就一直保持连接,可以发送多次HTTP请求。(目前浏览器中对于同一个域名,默认允许同时建立 6 个 TCP 持久连接)
  2. HTTP1.1支持断点续传,只发送header信息(不带任何body信息)
  3. HTTP1.0缓存处理:expires,HTTP1.1引入更丰富的缓存字段如:cache-control

HTTP1.1和HTTP2.0

  1. HTTP1.1请求头header以纯文本传输;HTTP2.0支持头部压缩
  2. HTTP1.1是以文本格式传输数据,HTTP2.0改用二进制格式传输数据
  3. HTTP1.1需要等上一个请求的响应数据回来后才能发送另一个请求;
    HTTP2.0设计了 Stream 概念,多个 Stream 复用同一个TCP连接,并发处理多个请求
  4. HTTP2.0支持服务端推送

HTTP/2 通过头部压缩、二进制编码、多路复用、服务器推送等新特性大幅度提升了 HTTP/1.1 的性能,而美中不足的是 HTTP/2 协议是基于 TCP 实现的,于是存在的缺陷有三个。

  1. TCP的队头阻塞并没有彻底解决
  2. TCP以及TCP+TLS建立连接的延时
  3. 网络迁移需要重新连接

HTTP2.0和HTTP3.0

  1. HTTP3.0弃用TCP,基于UDP实现了QUIC协议,彻底解决了TCP层的队头堵塞
  2. 更快建立连接
  3. 通过连接ID,实现连接迁移;

狮子...大约 16 分钟面试计算机网络http
一份超详细VuePress + Github Pages教程

前言

个人认为,有自己的个人博客是一种很酷的象征,同时在求职的时候,也会给人留下一个良好的印象。所以我一直想搞一个自己的博客网站,但是想到搞网站还要学习 后端知识+服务器知识 ,我就失去动力了...

最近发现了一个神奇的工具 VuePress ,它满足了我所有的需求

  • 静态网站生成器(不用另外学后端知识啦)
  • 路由会根据 Markdown 文件的相对路径来自动生成(约定式路由)
  • 可以部署到 GitHub 上(没有自己的服务器也可以部署哇)
  • V2.0版本支持 Vue3 + TypeScript + Vite (就是你了)

狮子...大约 8 分钟教程VuePressGithubPages