当前位置: 首页 > news >正文

HTTP2.0 和 HTTP1.1 的区别

多路复用(优化管道),基于HTTPS,二进制帧,Header压缩,服务器推送

        多路复用:HTTP/2.0 在一个连接里,客户端和浏览器都可以同时发送多个请求和响应,而不用按照顺序一一对应,这样避免了“队头堵塞”(优化管道)

  • TCP连接:HTTP2使用单个TCP连接来传输多个请求和响应,从而减少连接建立的开销。
  • 流(Stream:在一个TCP连接中,可以有多个流。每个流都有一个唯一的Stream ID,用于区分不同的请求和响应。流是逻辑上的通道,允许数据的并行传输
  • 消息(Message:每个流可以包含一个或多个消息。消息实际上对应于HTTP/1.x中的请求或响应,由HTTP头部和消息体构成。
  • 帧(Frame:消息由一个或多个帧构成,帧是HTTP/2中最小的数据单元。帧以二进制格式存储,允许更高效的传输。

        二进制帧:虽然底层的数据传输都是以二进制进行,HTTP/2.0 使用二进制帧进行数据传输,而 HTTP/1.1 则使用文本格式的报文。二进制帧更加紧凑和高效,减少了传输的数据量和带宽消耗。

        头部压缩(Header Compression):HTTP/1.1 只支持Body压缩;HTTP/2.0 还支持Header压缩,使用了专门为Header压缩而设计的 HPACK 算法(在客户端和服务器同时维护一张头信息表,所有字段都会存入这个表,生成一个索引号,以后就不发送同样字段了,只发送索引号,这样就提高速度了),减少了网络开销。

        服务器推送:HTTP/2.0 支持服务器推送,可以在客户端请求一个资源时,将其他相关资源一并推送给客户端,从而减少了客户端的请求次数

        基于HTTPS:HTTP2.0是基于HTTPS的,保证了安全性

相关文章:

  • 【分布式理论13】分布式存储:数据存储难题与解决之道
  • JavaEE基础之- 数据库与建模工具
  • BSD协议栈:UDP输入
  • Scrapy安装,创建Scrapy项目,启动Scrapy爬虫
  • 【Vue】集成Antlr4
  • k8s-对接NFS存储
  • java:用Guava的TypeToken优雅处理通配符类型(WildcardType): ? extends Number
  • JSON类型理解(前后端交互/内存对数据操作)
  • 【论文技巧】Mermaid VSCode插件制作流程图保存方法
  • POI优化Excel录入
  • LangFlow和LangChain有什么区别
  • 大数据SQL调优专题——Flink执行原理
  • Web3 通识
  • 解锁外观模式:Java 编程中的优雅架构之道
  • TortoiseSVN\bin下的没有svn.exe的解决问题
  • Linux的基础指令和环境部署,项目部署实战(下)
  • pyinstaller打包报错:INTEL MKL ERROR: 找不到指定的模块。 mkl_intel_thread.dll.
  • linux 安装启动zookeeper全过程及遇到的坑
  • C++ 模拟真人鼠标轨迹算法 - 防止游戏检测
  • 启元世界(Inspir.ai)技术浅析(七):AI Beings 平台
  • 网友建议平顶山请刘昊然任旅游宣传大使,市委:有此设想,正申请经费
  • 青岛双星名人集团董事长发公开信称家人逼迫交出管理权?公司回应
  • 践行自由贸易主义理念,加快区域合作进程
  • 山东滕州一车辆撞向公交站台致多人倒地,肇事者被控制,案件已移交刑警
  • 十大券商看后市|A股风险偏好有回升空间,把握做多窗口
  • 五一档7.47亿收官:《水饺皇后》领跑;男观众占比增多